docs(secondmate-provisioning): clarify concise registry ownership#649
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Intent
Implement the captain-ordered concise secondmate routing-table contract as one small Firstmate PR after the overlapping bootstrap and nudge PR lands. Preserve the parser-compatible single-line identity, home, project-list, scope, and added-date registry fields. Keep each data/secondmates.md entry to a one-sentence charter summary, explicit natural-language scope, and only genuinely domain-specific hard rules. Make the seeded home's data/charter.md the sole owner of boilerplate idle-by-default behavior, normal delegation lifecycle, and standard escalation contracts, with the registry pointing through the existing home field rather than adding a new pointer field. Do not rewrite captain-private data/secondmates.md, do not duplicate boilerplate into another tracked owner, and do not expand AGENTS.md unless its trigger became incorrect. Add focused regression coverage so future guidance cannot regress to multiline summaries or repeated boilerplate and so the charter pointer remains explicit. Let no-mistakes v1.39.0 own custody recovery and synchronization onto current main; do not reset, cherry-pick, merge, or hand-copy commits.
What Changed
data/secondmates.mdentries stay parser-compatible and concise, with one-sentence charter summaries, explicit natural-language scope, and domain-specific hard rules only.data/charter.mdowns standard idle, delegation lifecycle, and escalation boilerplate, with docs pointing through the existinghomefield instead of adding another pointer.Risk Assessment
✅ Low: The updated change is well-bounded to guidance plus static regression coverage, preserves the parser-compatible registry fields and explicit charter pointer, and addresses the prior coverage gap without introducing new source-verifiable risks.
Testing
The pre-run full baseline was already green; I then reran the focused instruction-owner, brief, and secondmate lifecycle tests, plus a manual end-to-end secondmate scaffold/seed/validate flow that produced reviewer-visible evidence of the concise registry contract. All checks passed.
Evidence: Secondmate registry contract E2E evidence
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
🔧 **Review** - 1 issue found → auto-fixed ✅
tests/fm-instruction-owners.test.sh:117- Intent requires: "Add focused regression coverage so future guidance cannot regress to multiline summaries or repeated boilerplate." The added test only extracts the## Routing tablesection and checks boilerplate phrases there, but the boilerplate this PR removed was in## Charter and seed, so reintroducing it in that section would still pass. Expand the regression check to cover the section where the removed boilerplate lived, or otherwise scan the relevant guidance owner for repeated boilerplate.🔧 Fix: Expand secondmate registry boilerplate coverage
✅ Re-checked - no issues remain.
✅ **Test** - passed
✅ No issues found.
command -v tmux >/dev/null || { echo "tmux is required for e2e tests" >&2; exit 1; }; tmux -V; rc=0; for t in tests/*.test.sh; do echo "== $t =="; bash "$t" || rc=1; done; exit "$rc"Baseline already passed before this run:command -v tmux >/dev/null || { echo "tmux is required for e2e tests" >&2; exit 1; }; tmux -V; rc=0; for t in tests/*.test.sh; do echo "== $t =="; bash "$t" || rc=1; done; exit "$rc"bash tests/fm-instruction-owners.test.shbash tests/fm-brief.test.shbash tests/fm-secondmate-lifecycle-e2e.test.shManual evidence flow: scaffoldedonboardingwithbin/fm-brief.sh --secondmate alpha, seeded it withbin/fm-home-seed.sh onboarding <home> alpha, ranbin/fm-home-seed.sh validate, and recorded the resulting registry and charter evidence.✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.