Repository integration layer to the helic-forge agentic software factory and operations facility.
Find a file
tegwick 1be6d85397 feat(onboard): add rmgr repo-onboard, the missing managed_repos write path
hub-record-authority.yaml assigns managed_repos to repo-manager as
file-derived, but repo-manager exposed no command for it. The only working
path lived in the State Hub repo and defaulted to 127.0.0.1:8000, which is how
seven weeks of onboarding landed in a local cache instead of central.

Order follows ADR-010 decision 5: make the source file correct and reachable
first, then project it. Refuses to onboard when the classification file is
missing or invalid, has uncommitted changes, has no upstream, or has unpushed
commits — a hub record whose backing file is only local cannot be re-derived
by anyone else.

--api-base has no default on purpose. A silent localhost default is the
original defect, not a convenience.

A failed classification PATCH degrades to a warning rather than failing the
run: the authoritative record existing is what stops a repository from being
recoverable only through a discardable cache, and classification is a
projection of a committed file that can be re-derived later.

Refs CUST-WP-0067-T04

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-24 23:33:22 +02:00
.githooks feat: advance repository records and provenance 2026-08-21 22:07:48 +02:00
config fix(identity): enforce qualified ad-hoc identifiers 2026-08-23 14:45:26 +02:00
decisions repo.work.resolve_decision RMGR-DEC-2026-003 2026-08-22 22:34:15 +02:00
docs fix(identity): enforce qualified ad-hoc identifiers 2026-08-23 14:45:26 +02:00
history docs: research SH repo tooling, architecture blueprint, RMGR-WP-0002 2026-08-09 23:04:49 +02:00
intakes chore(registrar): assign State Hub identifiers 2026-08-21 22:44:54 +02:00
interfaces feat(identifiers): verify batch projections 2026-08-22 23:50:34 +02:00
schemas feat(handoffs): publish owner task interfaces 2026-08-22 14:15:48 +02:00
specs docs: research SH repo tooling, architecture blueprint, RMGR-WP-0002 2026-08-09 23:04:49 +02:00
src/repo_manager feat(onboard): add rmgr repo-onboard, the missing managed_repos write path 2026-08-24 23:33:22 +02:00
tests feat(onboard): add rmgr repo-onboard, the missing managed_repos write path 2026-08-24 23:33:22 +02:00
workplans fix(identity): enforce qualified ad-hoc identifiers 2026-08-23 14:45:26 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-08-22 23:26:32 +02:00
.gitignore feat(RMGR-WP-0001): complete T05 end-to-end vertical slice 2026-08-09 22:49:31 +02:00
.repo-classification.yaml Seed Repo Manager foundation 2026-08-09 16:36:09 +02:00
AGENTS.md feat: add scoped identifier registrar 2026-08-21 21:38:23 +02:00
INTENT.md docs: establish INTENT/SCOPE and activate RMGR-WP-0001 2026-08-09 21:55:59 +02:00
Makefile docs(RMGR-WP-0001): complete T04 implementation foundation 2026-08-09 22:41:26 +02:00
pyproject.toml feat: finish register receiving and authority routing 2026-08-21 23:15:48 +02:00
README.md feat(RMGR-WP-0008): add workplan and register receiving surfaces 2026-08-21 17:15:21 +02:00
SCOPE.md docs: establish INTENT/SCOPE and activate RMGR-WP-0001 2026-08-09 21:55:59 +02:00
WORK-RECORDS.md feat(sbom): add authoritative Nexus client 2026-08-22 23:26:45 +02:00

repo-manager

Repository integration boundary for the HelixForge agentic software development and operations environment.

Repositories remain independently valid and usable. Repo Manager gives each repository a stable representation inside HelixForge, observes its declared state, performs governed repository changes, and hosts its coach/lead/director agent representation.

Flavor tooling (not a domain hub)
Domain infotech
Parent project prj-state-hub-retirement
Foundation WP RMGR-WP-0001

Start with INTENT.md, SCOPE.md, and the genesis record.

Architecture:

make install   # or: uv pip install -e ".[dev]"
make test
rmgr --version
rmgr observe --path .
rmgr reconcile --path .
rmgr update-task-status --path . --task-id <ID> --status progress
rmgr workplan create --path . --workplan-id EX-WP-0001 --title "Example" --goal "Deliver X."
rmgr workplan update --path . --workplan-id EX-WP-0001 --status active
rmgr workplan delete --path . --workplan-id EX-WP-0001 --confirm  # archives; never erases
rmgr register put --path . --kind technical-debt --entry-id TD-001 \
  --title "Debt item" --data-json '{"severity":"high"}'
rmgr register list --path . --kind technical-debt
rmgr rapp wrap --path ../rapp-some-app --app some-app \
  --ownership-repo some-app --from-app ../some-app
rmgr rapp validate --path ../rapp-user-engine --family-root ..
rmgr rapp place --path ../rapp-some-app --reef reef-railiance
rmgr conform --path .
rmgr prefix-uniqueness --root ..
rmgr scaffold --path ../prj-example --flavor project --wp-prefix EX-WP --no-commit

Vertical-slice proof: docs/evidence/t05-vertical-slice.md.

Direction: