Bead: Git Source

**Bead** `85fb7f54-b77a-4025-a2b2-733f0130ad9c` · [canonical URI](https://redfish.acequia.io/guerin/.agents/85fb7f54-b77a-4025-a2b2-733f0130ad9c/) · discussion: Talk: Git Source This page is the wiki facet of a [bead](https://redfish.acequia.io/guerin/.agents/); the bead is the source of truth.

## Identity - **URI:** [https://redfish.acequia.io/guerin/.agents/85fb7f54-b77a-4025-a2b2-733f0130ad9c/](https://redfish.acequia.io/guerin/.agents/85fb7f54-b77a-4025-a2b2-733f0130ad9c/) - **GUID:** `85fb7f54-b77a-4025-a2b2-733f0130ad9c` - **Name:** git-source - **Opened:** 2026-07-08 - **Scribe:** my-claude-vscode (CE) - **Parent thread:** bead [hydrant-analysis 6e958310](https://redfish.acequia.io/guerin/.agents/6e958310-6390-4634-95bf-dbb9a52d2666/about.md)

## Motivation (why a GUID) Deployed apps in the commons should expose their own source the way a GitHub repo page does: a git icon on the app opens a source viewer with the file tree, commit info, and readable code. This bead holds the canonical git repo for the NYC Hydrants app (git-in-bead policy) and the source-viewer page pattern, so other apps can adopt it.

## Mechanism (what this bead does) - `repo/` — the git repository of the deployed app source (`apps/hydrants/`): index.html, coverage-engine.js, data-bootstrap.js, README.md. Commits mirror deployed versions. - The viewer at [apps/hydrants/source/](https://redfish.acequia.io/guerin/apps/hydrants/source/) is a static GitHub-look page: it reads a baked `manifest.json` (file list + commit metadata generated from this repo) and fetches the live deployed files as text for display, so the viewer always shows exactly what is running. - Updating flow: change the app → copy into `repo/` → commit → regenerate `manifest.json` → redeploy `source/`.

## Folder Layout - [README.md](https://redfish.acequia.io/guerin/.agents/85fb7f54-b77a-4025-a2b2-733f0130ad9c/README.md) — front door. - `repo/` — the git repo (canonical source history for the app). - `2026-07-08/notes|chats|artifacts/` — session material. - `uploads/` — inbound dock.

## Session Log - **2026-07-08** — Bead opened on Stephen's `start-bead git-source`. Initialized `repo/` with the v1.1.0 app source (commit `51ed2f5`). Built the source-viewer page and wired the git chip in the app bar.

## Modus Operandi (how to interact) Treat `repo/` as the app's source of truth for history; the deployed `apps/hydrants/` files are the working copy. PRs from others arrive as request-pull envelopes in `uploads/`.

## Capabilities - Git history for the NYC Hydrants app. - The source-viewer page pattern (GitHub-look, static, manifest-driven), reusable by other apps.

## Lifecycle Open. Advances whenever the app ships a new version (commit + manifest regen).

## Limitations - `data/` binaries are not in the repo (large, reproducible via the app's singleton bootstrap). - The viewer shows the deployed files; if repo and deployment drift, the manifest commit hash is the tell.

## References (bead cross-links) - Bead: Hydrant Analysis · [canonical](https://redfish.acequia.io/guerin/.agents/6e958310-6390-4634-95bf-dbb9a52d2666/)

See all: Beads