helix-forge/workplans/HF-WP-0005-reusable-prompt-collection.md
tegwick fdf5af121c
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
chore(consistency): sync HF-WP-0005 ids and regenerate WORK-RECORDS.md
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
2026-09-06 17:16:28 +02:00

4.3 KiB

id type title domain repo status owner topic_slug created updated state_hub_workstream_id
HF-WP-0005 workplan Reusable prompt collection under prompts/ infotech helix-forge finished codex helix-forge 2026-09-06 2026-09-06 d1597e31-c246-5153-a34e-9bdbba8a97d9

Reusable prompt collection under prompts/

The operator's working prompts for driving work across HelixForge repositories existed only as text pasted between sessions. This workplan packages them in Canned Prompt Format v0.2 so they carry explicit contracts, compose shared context, and can be versioned and evaluated.

Companion work in canned-prompts: CANP-WP-0004 (the catalog index that records where each package came from and when).

Package the collection

id: HF-WP-0005-T01
status: done
priority: high
state_hub_task_id: "caedcf7b-de89-575a-a898-22260c4ccfd1"

Seven packages plus two fragments under prompts/:

Package From
helix/repo-orient "What is this repo about? What workplans and tasks are pending? How and what will we benefit… and how much effort" — merged with "what should we do now" as a depth parameter
helix/repo-register "Review and Register this repo. Refine open Questions by conducting an interview if necessary"
helix/repo-advance "Check for changes and open work, review and implement it, then commit and sync"
helix/commit-sync "Review, commit and sync local changes"
helix/scope-audit "Update SCOPE.md to what the repo actually is capable of… file under history/ with a timestamp prefix"
helix/gap-workplan "What are the most relevant gaps? Build a workplan addressing them. Register and implement it"
helix/session-close "Close down this session… put an entry to hall-of-helix following its CLOSING.md"

Dropped deliberately. "Go on implement, please" is conversational continuation with no contract to declare — packaging it would produce an empty artifact whose only content is the word "continue".

Extract the implicit context into a fragment

id: HF-WP-0005-T02
status: done
priority: high
state_hub_task_id: "ad88f320-61ca-5f20-89f5-3930f63ae18c"

Every one of these prompts assumed the operator's setup: that the State Hub is a read model, that workplans originate as files and are never registered by hand, that a session closes with a progress event. That assumption is exactly what made them personal rather than reusable — INTENT.md calls hidden context the enemy of reuse.

helix/custodian-conventions (type: fragment) states those rules once and is composed by every package, so they are versioned and improvable in one place and present for an agent that has never seen this fleet.

Remove the diamond dependency

id: HF-WP-0005-T03
status: done
priority: medium
state_hub_task_id: "20af4e8c-7162-5747-8381-7b25fe997b3d"

helix/repo-advance first composed the whole helix/commit-sync package, which itself composes the conventions. The rendered prompt contained the conventions block twice — CPF inclusion does not deduplicate, so a diamond dependency renders shared content once per path.

Fixed by factoring: helix/commit-sync-routine holds the routine with no conventions of its own, and both commit-sync and repo-advance compose it alongside the conventions. No diamond, and a better factoring independently of the bug.

Recorded upstream as a format finding — see CANP-WP-0004-T03.

Make session-close carry the canonical PQRST prompt

id: HF-WP-0005-T04
status: done
priority: high
state_hub_task_id: "d01d0ae3-4839-5e47-8f4d-ba13635d8bb0"

hall-of-helix/CLOSING.md step 2 says to paste ~/pqrst-practice/PqrstPrompt.md unmodified, and notes that the canonical prompt still governs when you have no checkout — without saying how it reaches you.

helix/session-close composes practice/pqrst-estimate, so the canonical block is embedded verbatim in the rendered closing prompt. Closing a session no longer needs a pqrst-practice checkout. evals/pqrst-embedded.yaml guards it: if the canonical text stops being embedded verbatim, render checks fail rather than the package quietly becoming a paraphrase.

This depended on fixing practice/pqrst-estimate upstream, which was itself a paraphrase of the canonical prompt — see CANP-WP-0004-T01.