HF-WP-0005. The prompts used to drive work across HelixForge repositories existed only as text pasted between sessions. They are now Canned Prompt Format v0.2 packages with declared inputs, parameters and output contracts. Seven packages: repo-orient (merging "what is this repo about" with "what should we do now" as a `depth` parameter), repo-register, repo-advance, commit-sync, scope-audit, gap-workplan, session-close. "Go on implement, please" is deliberately not packaged. It is conversational continuation with no contract to declare, and packaging it would produce an artifact whose only content is the word "continue". Every one of these prompts assumed the operator's setup — the State Hub is a read model, workplans originate as files and are never registered by hand, a session closes with a progress event. That assumption is what made them personal rather than reusable. helix/custodian-conventions states those rules once as a fragment composed by every package, so they are versioned, improvable in one place, and present for an agent that has never seen this fleet. helix/commit-sync-routine exists for a narrower reason. repo-advance first composed the whole commit-sync package, which itself composes the conventions, so the rendered prompt carried the conventions block twice — CPF inclusion does not deduplicate, and a diamond dependency renders shared content once per path. Factoring the routine out removes the diamond and is a better factoring regardless. Recorded upstream as canned-prompts CANP-WP-0004-T03. helix/session-close composes practice/pqrst-estimate, so the canonical PQRST block is embedded verbatim. hall-of-helix CLOSING.md says the canonical prompt still governs when you have no pqrst-practice checkout, without saying how it reaches you; this is how. evals/pqrst-embedded.yaml fails if the canonical text stops being embedded verbatim, rather than letting the package quietly become a paraphrase. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Bjefh8NUiEiahN4JLwoSKM Assistant: claude-code Assistant-Model: opus Assistant-Process: 388925@bnt-lap001 Assistant-Session: 3507023f-e0fd-4a1e-9d90-a0d4217d1502
36 lines
1.2 KiB
Markdown
36 lines
1.2 KiB
Markdown
{{ conventions }}
|
|
|
|
## Task
|
|
|
|
Advance this repository: find what is open, implement what is ready, then commit
|
|
and sync.
|
|
|
|
### 1. Find the open work
|
|
|
|
Two sources, and check both: uncommitted changes in the working tree, and open
|
|
tasks in the workplan files. They often disagree — half-finished work in the
|
|
tree that no task mentions, or a task marked `progress` with nothing to show.
|
|
Report the disagreement; it is usually informative.
|
|
|
|
### 2. Decide what is actually ready
|
|
|
|
Not everything open is ready. A task is ready when its premises still hold and
|
|
nothing it depends on is unresolved. A task that needs a decision from me is not
|
|
ready — surface it instead of guessing.
|
|
|
|
Say what you chose to work on and what you deliberately left.
|
|
|
|
### 3. Implement
|
|
|
|
Implement the ready work. Verify each piece before calling it done: run the
|
|
tests, exercise the path, show the output. If something fails, report the
|
|
failure rather than working around it silently.
|
|
|
|
Update task statuses in the workplan files as you go, not in a batch at the end.
|
|
|
|
{{ commit_and_sync }}
|
|
|
|
### 5. Report
|
|
|
|
What was implemented and verified, what was left and why, and anything that
|
|
needs a decision before the next session.
|