#23 skill v2: fold gl0w-swarm feedback — git bridge, ci execution, merge/never-delete clarity, spec pointer (within budget)
SOURCE: gl0w-swarm dogfood feedback, first read of the contract. Verified against SKILL_TEXT today: 650B/15ln; cap 900B/30ln; golden test skill_single_source_body_equals_skill_text pins skill/skill.md body == SKILL_TEXT. Review verdict: philosophy lines all praised; gaps are procedural/git-bridge, exactly where a terse skill bleeds.
ADD to the contract, priority order:
- git bridge (MUST, keep full form): .forge/ is committed and travels with the repo; a PR is a git branch (from a worktree).
- ci execution (MUST): steps are scripts; f0rge ci RUNS them in filename order; first nonzero exit = fail verdict (keep pass|fail|running|cancelled lifecycle words).
- merge + never-delete clarity: f0rge merge applies and prints conflicts, never resolves; merged PR folder STAYS (state: merged); only the branch is deleted. never-delete holds for all entities — the fix is clarity, NOT a carve-out.
- archive destination: archive moves the entity folder to .forge/archive/ (the dangling "moves folder" verb gets a target).
- start: f0rge init creates the .forge/ skeleton; idempotent, safe to run anytime (fold into the usage line if bytes demand).
- format pointer: spec/schema.md is the frozen format truth; labels.md/milestones.md are the label/milestone registries.
CUT (explicitly out of scope): full skeleton enumeration (discoverable in one ls; formats belong in spec/, not the contract); repo-specific conventions (AGENTS.md placement, gitignores, migration scope) — never bake per-repo facts into a generic contract.
RULES: budget cap 900B/30ln UNCHANGED — no PLAN §M2 change, no budget-test change. If the draft exceeds 900B, compress by priority: items 1-2 keep full form; items 3-6 bend (drop exemplars, fold init into usage, tighten wording). Keep the opener "f0rge v1: CONTRACT (not help)" and the semantics of all existing lines (id/number/ files/tree/frontmatter/never-delete/wiki/usage/json). Touch no other file: no -h, no root help, no spec, no core.
DONE means: SKILL_TEXT and skill/skill.md body byte-identical; skill_within_budget + golden test pass; full cargo test --workspace green; f0rge ci run verdict pass on the branch.
Comments (0)
No comments yet.