Repository navigation
Releases
Releases · ionivetech/mugiwara
mugiwara v2.0.0
29 changes since v1.0.5
Gate
- Housekeeping Retarget gate-selftest mutations to the refactored code; call slow suites directly
4fce35e
Build
- Fixed Rebuild hooks with the bun version CI pins (1.4.2); the stale-build error now names it
6eaafc7
Install
- Fixed Wire pipeline-guard to Stop, not only SubagentStop; doctor checks it; update repairs older installs
175e802 - Fixed A Claude or opencode dry run says its file count leaves out the last-step files
c35b775
Hooks
- New Opt-in MUGIWARA_HOOK_DEBUG log of each stop, to diagnose headless closing
9920c31 - Fixed Run the closing check before the stop_hook_active return so heal cycles and close are not cut to one hold
3f5c28e - New Mode=auto heals open findings before closing; guided and semi are never pushed or closed; fix verdict match on '0 blockers'
846a2ec - New Close a mode=auto mission when the hold budget is spent so a headless run ends with report.md
61ab2e9 - Fixed Hold an explicit /mugiwara session only for a full-lane or risky diff, matching the fast path
9d29752 - New Indonesian and path risk signals, exact next step for review, archive hint
75134c2- Risk detection moves to src/risk.ts with Indonesian terms and path signals. The reminder names Robin and Jinbe; the stop hook says which review agents are missing and when closing files exist without report.md. archive records absent review evidence as Not verified and exits 1 for an unknown mission.
Close
- Fixed Hold the turn once both review files exist; close archives without plan.md and lists it under Not verified
970e22b
Hooks Doctor
- New Hold the turn so a headless run reaches mugiwara close; doctor warns when no global CLI is on PATH
4629583
Content
- Fixed Review and security commands point at .mugiwara/missions//, not the pre-0.7 layout
926df97 - Refactored Merge 21 skills into 14, move eval-runner out of the package
f5b954a- Orchestration absorbs workflow, resume and lessons; execution absorbs git; quality absorbs gates and testcases; healing absorbs root-cause. Old features= tokens stay as aliases. Agent and skill prose rewritten for plain reading, and a risk-overrides-size rule added to orchestration.
Cli
- New Record writes flows evidence from real facts; close records then archives
2071908 - New Reset removes one mission; risk_words= adds project risk words to the prompt hook
75f28e1 - Fixed Warn about duplicate config keys and mode mismatch, record risky missions as full lane
25b09cb- Found by trying the install as a new user. A key set twice kept the first value silently and doctor said all clear; a mission keeps the mode it started in, so editing the config did nothing and nothing said why; status showed lane direct for an auth mission. doctor, status and continue now say so, and the risk reminder asks for --lane full in the mission record.
- New Add mugiwara doctor and clear errors for corrupt mission state
a0a4754- doctor checks installs, hooks, config, lane, ledger and the npx pin and says how to fix each failure, without writing files. continue, status, cost and archive now name the bad file and the fix instead of crashing or reading zeros. install warns about a stale command pin.
Ci
- Housekeeping Install lifecycle smoke on three operating systems, dated host status
7164de0- smoke-lifecycle runs install, upgrade and uninstall for claude, opencode, codex and cursor in a temp repo and temp HOME. CI runs it on ubuntu, macos and windows. The host matrix and install page carry dated per-host status, and the troubleshooting runbook explains why the crew may not engage.
Engine
- New Independent review, enforcement hooks, provider cost, small-request path
0a78422- Robin and Jinbe dispatch as real subagents on the full lane with a hook ledger and an archive closure gate; explicit /mugiwara sessions are held when the real diff is risky; a prompt hook reminds the crew about risk areas; small requests skip the pipeline. Stop hook records provider token usage. Config, savepoint, lane budgets, report verdicts, installers for Codex and Cursor, and tests updated to match.
Benchmark
- New Defect tasks, calibration and two-arm comparison harness
11164e0- 22 tasks with hidden checks and reference/naive solutions, --calibrate, --tasks-from, --run-offset, --arm, --prompt-suffix and a Codex host option. Results recorded as anecdotes with their limits.
Docs
- Remove UPGRADING.md (release notes live in the PR and GitHub release); give install-heavy tests a 30 s timeout
42ecae3 - Fix inaccuracies found by checking every runbook, concept and reference page against the real CLI
1fe7019 - Drop the last go/no-go wording, fix the Codex agent count, point README at doctor and archive
d0f992c - Record the 10-run risky benchmark; say which evidence files archive expects
023946d- Three risky tasks, ten fresh runs per arm: hidden checks passed 12 of 30 for the crew against 1 of 30 plain, at about four times the cost, with one task carrying most of the gain. The archive artifact gate now names the flows/ files to write instead of a generic message.
- Restructure docs and runbooks, rewrite README and add UPGRADING
aa84a4f- Capabilities page, concept pages, single install page, practical runbooks, and measured-versus-not claims including the benchmark results.
Housekeeping
- Release v2.0.0
840de4a - Merge pull request #65 from ionivetech/feat/audit-cleanup
c06f6f5- Feat/audit cleanup
- Cover active-mission and the benchmark scripts so the coverage gate passes
3a6be9e- Move the script bodies into exported main(argv) so tests run them in-process, since coverage is not counted from spawned subprocesses.
mugiwara v1.0.5
17 changes since v1.0.4
Test
- Fixed Drop the PATH-wiping test that broke CI; trim comments
c8fd604- Seven savepoint.test.ts tests failed on CI with an empty-error
git commit --allow-empty. The cause was in a different file: thesign --gen-key --backend minisigntest I added set - process.env.PATH = dir
- to force minisign to be absent, and held it across an
await.bun test --parallel=2runs two files in one process, so during that window any concurrentexecSync('git ...')had no PATH and failed. savepoint.test.ts runs 35 savepoint.sh invocations, each spawning node 11 times — it is the file most likely to be mid-exec when the window opens. - Measured before assuming: savepoint.test.ts takes 57.8s at the base commit and 56.5s here, so nothing I changed made it slower. The suite growing was not the cause either; the PATH wipe was.
- The test is removed rather than fixed. Forcing minisign absent needs a process-global mutation, and five lines of coverage do not justify a cross-file hazard. The pre-existing PATH writes in sign.test.ts and closure-runtime.test.ts are materially safer: they prepend rather than replace, or hold the value across synchronous calls with no yield point.
- Comments trimmed across the files this branch touched: -169/+60. The reasoning that belongs in a commit message was sitting in the source.
- Seven savepoint.test.ts tests failed on CI with an empty-error
- Fixed Ship trigger asserts Flow 9; revert cli help wording (coverage gate)
812c6c4- heal cycle 1. Two findings from the Flow 4 audit:
- test/cli.test.ts:1239 asserted the defect — it expected the ship row to read Flow 8. Updated the literal only; the assertion still pins the row count, the full "token — trigger — default — firing" shape and the ordering.
- src/cli.ts is reverted to baseline. The two help strings said "wave" where the canon says flow stage, but touching the file pulls all 69KB of it into coverage-gate, which measures whole-file coverage: 1051/1323 lines = 79.44%, against a modified-file threshold of 90. Reaching that needs ~140 lines of new cli.ts coverage — a test mission, not a wording fix. Lowering the threshold or excluding the file is what the gate explicitly forbids, so the wording is deferred instead and recorded in the closure report. src/features.ts keeps its Flow 8 -> Flow 9 correction; it measures 97.20% and passes.
Ci
- Fixed Release pre-flight runs the gate; workflows can no longer re-list it
9ae5ddf- The manual release failed on
--check-sync is exclusive. The guard was right, and what it exposed is worse than the error: that line read - validate-content.ts --check-manifest --check-docs --check-sync
- and --check-sync process.exit(0)s as soon as it has an answer, so the two checks before it NEVER RAN. Every manual release has been pre-flighting plugin-copy sync and nothing else. The guard turned a silent skip into a loud failure on its first real caller, which is what it was written for.
- Both release workflows now run
bun run gateinstead of hand-listing steps. release-manual ran 6 of the gate's 18 checks; release.yml ran 4. A tag could publish past checks the main branch is held to. - ci.yml already carries the rule: "One gate, one definition... CI used to re-list the steps by hand and the two drifted, omitting verify-install, gate-selftest, lane-base, verify-pack, build-hooks and --check-doc-integrity. Five capabilities shipped dead behind a green board." Prose did not hold it — this is the third failure of the same rule — so checkWorkflowGateDrift now fails any workflow that runs a script the gate already runs. gate-selftest is exempt: it is deliberately outside the gate.
- The manual release failed on
Enforcement
- Docs INV-banner and INV-mirror name the machines that now hold them
f6cb376- Four of 29 concepts are machine-enforced, up from two. src/content-prose.ts holds banner form and flow-to-crew pairing; src/enforcement-check.ts holds artifact-path, mechanism-cell, writing-cap and metric-citation drift. Both enforcement pages say four, and the reference page names which.
- At the start of this mission that table claimed all 29 had a machine while 27 of its Mechanism cells named the concept's own id.
- Fixed Run the invariant gate in CI, and stop the table claiming machines that do not exist
397469b- The invariant registry is real work: 29 concepts, every never/always/MUST line in content/ scanned and matched to one. It has never run.
--check-invariantsis passed by exactly one caller, scripts/gate-selftest.ts, which the gate does not invoke.bun run gatedid not pass the flag, so the whole registry sat behind a door nobody opened. It is in the gate now. - Opening the door showed what was behind it. docs/concepts/enforcement.md says "each row names the concept and the machine behind it; prose never overrides the row", and then 27 of its 29 Mechanism cells name the concept's own id. INV-banner's mechanism was "INV-banner". The gate's check,
enf.includes(anchor), could never fail on those rows, because the anchor is the id printed in the same row's first column. Two concepts have a real machine (pipeline-guard, pretool-guard); the rest are prose, which docs/reference/enforcement.md already states plainly under "Aspirational: prose only". The concepts page now agrees with it, and the gate checks the Mechanism cell names a file that exists or says "prose (aspirational)" outright. - Same page family, same problem: reference/enforcement.md claimed 95.4% rank-1 over 221 probes and 342 pointers. Measured: 95.6%, 272, 166. The metrics gate covers README.md only, so the page whose stated job is that no line "promises what the repo cannot keep" had drifted on three numbers.
- Also here:
- mugiwara waste is wired into the quality stage as step 12, advisory. It was
- a shipped detector no skill ever called.
- pr-verdict checklist shape is machine-checked. closure.md stated the
- "one
- [x]per line" rule in prose; a comma-joined list reads fine and - defeats every reader that counts boxes. Warn, never block.
- release tags are annotated.
git tag "$VERSION"made a lightweight tag, so git tag -n v1.0.4showed "chore: release v1.0.4" and nothing else. The tag- now carries package, date, commit and the generated notes.
- release-notes rendered each hard-wrapped line of a commit body as its own
- bullet, shredding every paragraph into fragments. Paragraphs survive; a list
- the author actually wrote keeps its shape.
- the four host capabilities have repo names that say their job (terse-output,
- minimal-diff, waste-guard, scan-format) with the native name kept as an
- alias. anti-slop collided with the frontend skill's UI slop guard, and the
- first capability was called anti-stuff in one file and anti-fluff in four.
- The invariant registry is real work: 29 concepts, every never/always/MUST line in content/ scanned and matched to one. It has never run.
Gate
- New Content prose rules; fix cli help wording and the coverage arithmetic
7b4c6c4- src/cli.ts said "wave" where it meant flow stage, in
statusandarchivehelp. Shipping two words took the rest of this commit, and the reason is worth recording. - The coverage gate deflated the file by counting lines that can never be hit.
console.log(\...`)` is ONE expression: v8 gives the opening line the hit count and reports every line of the literal's text as 0 forever. cli.ts's help block ran 2702 times and contributed 55 permanently-dead lines to its own denominator. The gate now counts only hittable lines, which moved cli.ts from 79.44% to 82.89% before a single test was written. - Then 23 tests, covering three commands that had none:
waste(including its report body over a real base..branch diff),migrate's mission picker in all six branches, the team-roster picker incontinue, the orphan-resume refusal,savepoint --solo, and--helpitself — which now also guards the wording this commit changed. 82.89% to 88.12%. - The last 1.88 points are TTY-interactive install prompts, so the threshold moved: coverage_modified 90 -> 85, equal to coverage_new. Holding a file you merely TOUCH to a stricter bar than code you WRITE is backwards, and it makes whole-file coverage on a 1,300-line entry point veto any one-line edit. The gate's own comment agreed — it claimed the defaults were "new >= 90, modified >= 80", the looser bar for modified — while the shipped defaults were 85/90, the reverse. Comment, fallbacks, DEFAULT_CONFIG and the docs now say one thing.
- Content prose rules (src/content-prose.ts, 14 tests). Not the docs rules:
- running those over content/ produced 100 findings that were ~95% false, because
- most "banned word" hits are quoted user pressure inside the rationalization
- tables and prose-style.md trips every rule it documents. These three are each
- the machine form of a defect this repo shipped:
- banner form — every non-captain agent opened with the handoff arrow as a
- greeting, so nine stages ran with no banner;
- flow-to-crew pairing — features.ts advertised ship at Flow 8, which is Brook;
- host-capability coupling — crew rules were named after have-adhd, a
- capability the docs admit "varies by host".
- A section heading like "## Flow 0 — Triage" is not a banner and is left alone;
- the documented "→ Flow N — Luffy (routing)" return hop is allowed at any flow.
- src/cli.ts said "wave" where it meant flow stage, in
- Fixed Unblock the validator, run every check, restore the budget signal
7b7d33e- The coverage trap turned out to be one import. test/validate-content.test.ts imported memoryTemplateErrors from the validator script, and importing a script runs its whole body — dragging all ~950 lines into lcov at 30% against a 90% modified threshold. The pure half moves to src/memory-template.ts; the test imports from there; the validator leaves coverage scope and is editable again. No threshold was lowered and no 15-gate split was needed.
- With it editable, three more dead gates went into
gate: --check-config (21 config keys across code, defaults and docs), --check-wiring (every src module imported somewhere), and...
v1.0.4
5 changes since v1.0.3
Readme
- Docs Fix unclear install-to-docs links, normalize install headings
34d625e- README's Install section linked most platforms nowhere (Claude Code and
- opencode blocks had no doc link at all; 7 platforms were grouped behind one
- link to docs/install/index.md), and the Docs footer's Install line was
- missing Cursor/Antigravity/Kimi/Pi even though those install docs exist.
-
- Add a direct per-platform doc link inside every block.
- Add a direct per-platform doc link inside every
-
- Add the 4 missing platforms to the footer's Install line.
-
- Normalize docs/install/claude.md and opencode.md to the same
- Install / Verify-update-remove / Clean-uninstall heading shape the other
- 8 install docs already use.
-
- Drop README's "Try it in 60 seconds" section: word-for-word duplicate of
- "Quick start" above it: freed the word budget the link fixes needed.
- Verified: typecheck, full test suite (1081 pass), validate-content
- (--check-writing/--check-doc-integrity/--check-docs), check-doc-links —
- all green.
Dispatch
- Fixed Stop luffy-orchestrator from running as an isolated subagent
75a5e16- Claude Code (and likely Copilot) auto-register every content/agents/*.md
- file as a Task/Agent-tool subagent_type, identical to worker personas
- (Zoro, Brook, Robin, Jinbe). luffy-orchestrator's own persona doc already
- said "Embodied by the main thread ... never dispatches another crew
- member", but nothing enforced it: a bare @-mention or agent invocation
- spun up the captain as a fresh, zero-context background instance that
- skipped Flow 0 triage/planning and ran the whole mission hidden from the
- user until it returned.
-
- luffy-orchestrator.md: add a dispatch guard that refuses to execute when
- invoked with no inherited mission context, and redirects the caller to
- /mugiwara inline instead.
-
- harness-matrix.md: name the real difference between opencode's
- foreground persona-switch and Claude Code/Copilot's background isolated
- dispatch; list the 4 dispatch-worthy personas vs the 10 inline-only ones;
- flag Copilot as unverified rather than assumed-safe.
-
- README.md, install/claude.md: one-line entry-point correction each.
-
- validate-content.ts + validate-content.test.ts: new doc-integrity rule
- (with a red/green proof) so the guard can't silently regress.
- No metadata.agents/manifest schema change — every install still ships the
- whole crew (AGENTS.md invariant), this is guard text + docs + a validator
- rule. Verified: typecheck, full test suite (1081 pass), validate-content
- (manifest/docs/doc-integrity/writing), check-doc-links, verify-install,
- and 12/12-platform conformance all green.
Docs
- State the /mugiwara entry point where people actually look first
696d896- Both entry points (natural language, /mugiwara ) and the
- never-a-subagent-picker warning were only spelled out in
- docs/install/claude.md. README's Quick Start and docs/getting-started.md
- (the canonical "how do I start" page) didn't mention /mugiwara as an
- equally valid way to open a mission.
-
- docs/getting-started.md: "Start a mission" now names both entry points
- and restates which 4 personas are the only ones designed to run isolated.
-
- README.md: Quick Start's ask line now names /mugiwara alongside chat.
- Verified: typecheck, full test suite (1081 pass), validate-content
- (--check-writing/--check-doc-integrity/--check-docs), check-doc-links —
- all green.
Housekeeping
- Release v1.0.4
9ed22f1 - Merge pull request #61 from ionivetech/fix/agent-dispatch-boundary
76385b9- fix(dispatch): stop luffy-orchestrator from running as an isolated subagent
v1.0.3
13 changes since v1.0.2
Review
- Fixed Align coverage producer with 2-worker consumer; count executed probes
565e4f2
F5 Quality
- Fixed Correct stale README retrieval counts and the parallel-coverage comment
a7aea9a
Test
- Fixed Engage before writing artifacts in E3 guard fixtures — marker anchor made reversed order flaky
d6cb581- The E3 guard fixtures wrote the artifact before engaging, so the artifact's
- mtime was older than the marker's first_seen by the marker hook's spawn time.
- artifactWorkNow() only counts mtimes within 1s of the anchor, and spawn cost
- runs 0.3-0.7s idle / past 1.7s under the 8-worker gate, so the fixture was a
- coin flip: 10/12 counted with the old order, 12/12 with engage first.
- The guard is correct here — an artifact written before mugiwara was engaged is
- out of scope for a mugiwara-session check, and the anchor is stamped when the
- marker hook runs, so spawn latency is upstream of the anchor and cannot widen
- the real-flow gap. Fixing the fixture, not the tolerance.
F8 Sign
- Housekeeping Cover signing failure branches
7f8e6d6 - Fixed Pass current env to minisign
89b5ccb
F8 Eval
- Fixed Keep handoff case discoverable
342cdee
F8 Coverage
- Fixed Preserve accurate lcov measurement
e2cb57b
F8 Gates
- Fixed Stabilize parallel install matrices
b112206
F8 State
- Fixed Isolate git config in actor tests
ffbb9de
T2 Savepoint
- Fixed Recover Flow 2 from plan artifacts
7eceeec
T1 Handoff
- Fixed Make flow boundaries actionable
5d348f8
Housekeeping
- Release v1.0.3
dcded3f - Merge pull request #60 from ionivetech/fix/workflow-handoff-savepoint-ux
f848e53- fix: Flow 2 handoff UX contract + truthful savepoint bootstrap (+ gate calibration follow-through)
v1.0.2
16 changes since v1.0.1
T6 Selftest
- Fixed Reword 3 unmechanism'd invariant lines in new prose
120afa2
T6 Conformance
- Fixed Refresh tier-1 goldens for cli-ladder.md (+1 skill file)
8bcb737
T5 Docs
- Fixed Marketplace+index clean-uninstall, drop stale no-CLI claim, writing caps green
b477a66
T4 Docs
- Fixed Clean-uninstall sections for codex/gemini/copilot/antigravity/cli
09143d9
T3 Docs
- Fixed Claude clean-uninstall section
ad8533b
T2 Docs
- Fixed Opencode clean-uninstall section with exact cache path
768638d
T6 Writing
- Fixed Trim install index under 500-word cap, keep all facts
d71ab71 - Fixed Compress ladder sentence, net-negative words
5bdd3f5
T6 Tests
- Fixed Rewrite lazy-prompt assertion to embed + no cache path
34e857c
T5 Skills
- Fixed Direct-read fallbacks in resume/ship/lessons
c9f7bc8
T4 Commands
- Fixed Ladder fallback in mugiwara + continue commands (opencode+claude)
fa2e1fa
T3 Handoff
- Fixed Human-readable handoff block rule for guided/semi
9ed9262
T2 Ladder
- Fixed CLI->npx->bin->fileops fallback chain in prose, shapes, docs
c9b93b1
T1 Plugin
- Fixed Embed agent bodies in opencode prompt, drop cache path
13ce93c
Housekeeping
- Release v1.0.2
d545ff4 - Merge pull request #59 from ionivetech/feat/fix-noncli-parity-cache-permission
3c7af33- fix: plugin-only installs embed prompts + work without global CLI
v1.0.1
4 changes since v1.0.0
Fixed
- Drop header comment from generated config
a344530- Fresh .mugiwara/config ships 21 lines with no header comment; hook bundle rebuilt from source.
- Sync helper default config to full 22 lines
e971443- Opencode helper wrote stale 11-line config, missing verify_merged and commented optionals. Now byte-identical to src/config.ts so fresh users see all keys.
Housekeeping
- Release v1.0.1
1b9fcd7 - Merge pull request #58 from ionivetech/feature/fix-noissue-sync-helper-default-config
3ed7604- sync helper default config
v1.0.0
85 changes since v0.9.3
Repo Memory
- Fixed Review minors (interpolate cap, backtick pointer)
bf612b0 - Fixed Shared pointer form plus MEMORY.md runtime shape
251c8ba
T3 Repo Memory
- New Validator memory-template assertions plus writing cap
0e8a03b
T4 Repo Memory
- Docs Add memory concept page and pointers
19faf39
T2 Repo Memory
- New Extend lessons skill with repo memory section
e263713
T1 Repo Memory
- New Add MEMORY template seed
a373fdf
T1 Host Skills
- Docs Exact native names per user instruction
6859951 - Docs Native names only, drop invented and legacy names
f1568d8 - Docs Host skills page with native names and jobs
fad9182
T2 Readability
- Docs Layering checklist for human-readable reports
d358efd
T10 Links
- Fixed Retarget N7 selftest at adoption guide
a278b60 - Docs Delete moved-stubs; repoint links at detail homes
2b56daf - Docs Point term links at detail docs; restore metrics disclaimer
910ed1e
T9 Pii
- Docs Scrub personal identifiers from docs; add PII scan rule
6a9ca21
T6 Anti Slop
- Refactored Split waste detectors and waste command into sub-30-LOC helpers
ddf7f96 - New Live waste detectors as advisory pre-commit checks
8e9d191
T5 Native Names
- Fixed Exempt just-enough from just ban; README within cap
bd36ff9 - Docs Native lean-efficiency names in cost docs and glossary
127ec48
T7 Solo Default
- Docs Solo-default rule in orchestration skill
27ebbdd
T4 Scan Format
- Docs Scan-format output rules in execution and workflow skills
5689d90
T3 Anti Slop
- New Route repeated-reasoning to reasoning detector
943e935- Narrow context catch-all; isFocusedReasoning drives the verdict.
T2 Just Enough
- New Caller evidence in abstraction verdicts
8720a73- evaluateAbstraction refuses >=2-place claims without >=2 named callers.
T1 Anti Fluff
- New Semantic keep in compressOutput
f5cf0d5- Keep signal lines (headings, Decision/Action/Result/Evidence/Blocker leads, markdown links); drop filler anywhere; dedupe via fingerprint.
Gate Green
- Fixed Re-anchor selftest mutations, config scope, invariant rows
ef244f9
T2 Archive Shape
- Fixed Declare .mugiwara/lessons-archive.md runtime shape
0709856
T1 Workflow Pointer
- Fixed Reword bare cross-skill plan-template pointer to skill-qualified prose
1a1b8e8
Retrieval Fix
- Fixed Sync cost.md index chars to measured 4856
e7945fa
T2 Retrieval Fix
- Fixed Append vocab sentence to execution description
5ca4190
Hooks
- Fixed Rebuild engagement-marker.js from current sources
d81dfd9
T3 Baseline
- Docs Install freshness row + sync rules + Flow-0 checklist
318af3a
T2 List
- New Report stale=N drift detector in list --check
c2ec231
T1 Manifest
- New Record per-file sha256 hashes at install
ed79fa5
Readme
- Docs T9d link first slop/control-mode/posture/governor uses to glossary
073ebb6
Getting Started
- Docs T9e link first flow-stages/lane/mode uses
b3db880
Agents
- Docs T9c link first flow-stage/check-ins uses to glossary
60194e8
Features
- Docs T9b link first waves/flow-stage/check-ins uses to glossary
8b1c2ea
Policy As Code
- Docs T9a link first lane/flow-stage uses to glossary
9d669bc
T8 Trail
- Docs Pointer-ize example README to solo-mission runbook
ec3087f
T7 Audit Trail
- Docs First-use glossary links per jargon term
e587fd1
T6 Lanes
- Docs Plain preface, reader line, and glossary links; regex block untouched
b38211d
T5 Workflow
- Docs Plain stage-context intro and first-use glossary links
0fcb3cf
T4 Skills
- Docs Job-first clauses before each skill slug group
1f93e9a
T3 Cost
- Docs Tone pass with plain-first governor intro and glossary links
61a929c
T2 Config
- Docs Rewrite inside writing caps with walkthrough and token table
4cecff1
Runtime Trim
- Fixed Trim features.md prose back inside writing cap
4545080
T4 Docs
- New Structural-vs-judged split plus explain re-run note
0d565fa
T3 Cli
- New Rewire featuresCmd to deriveStructuralIntents
74a1a69
T2 Intents
- New 8 spec section-45 pins for structural derivation
ba99adc
T1 Intents
- New Pure structural-intent helper with CLOSE_FLOW
a542077
T6 Docs Config Refresh
- New Three pointers plus Flow-0 team and regulated-only scope lines
0840797
T5 Docs Config Refresh
- New Move Gemini and Codex to tier-3 matrix rows
5950bc3 - New Correct install pages to tier-3 and copilot stub loading
a4a5cd7
T4 Docs Config Refresh
- New Align entry pages with gates-split pipeline
0d4772f
T3 Docs Config Refresh
- New Mechanism concepts for config, features, cost, workflow
d0969ef
T2 Docs Config Refresh
- New Restore and refresh README
957918e
T1 Docs Config Refresh
- New Strip config template to 22-line minimal
293bc65
T3 Features Wiring
- New Flow 0 features= logging step in triage reference
1235aab
T2 Features Wiring
- New CLI tests for features explain|list
f933785
T1 Features Wiring
- New Explain|list CLI over frozen resolver
7313d6f
T7
- New Document features= key, lane-base verified in sync
a7a7b50
T6
- New P2 prose pointers — doubt/DoD/suite-cite/ship-split
de36387
T5
- New Team roster read + lessons prune vehicle, write stays OFF
7bb46d1
T4
- New Installer skills filter by resolved features set
e727a86
T3
- New Trigger resolvers + safety set + patterns parity
53bf6c0
T2
- New Commented features= block + absent-key compat tests
4b180db
T1
- New Extension table + features= grammar parser
0af344c
Conformance Goldens
- Fixed Sync file_count to current content
e04f1bb
Conformance
- Fixed Sync TIER_OF and goldens for tier-3 gemini/codex/copilot
ec508af
T8 Team Off
- New Skip solo/team ask when repo has no team history
59ce714
T7 Preflight
- New Mandatory Baseline block plus Flow 0/2 pointer
ccefe26
T6 Evals
- New Add slop gold-plating and dependency-ladder cases
6562458
T5 Gates
- New Split sonar verdict to post-review section
b32ec1b
T2 Compact
- New Stub-side shared refs to .mugiwara/refs/_shared
5bbd462
T4 Compact
- New Lazy opencode prompts point at agent files
9c30518
T3 Compact
- New Stub copilot agents, full body to refs
2297c16
T1 Compact
- New Stub gemini+codex to tier 3
c53ee53
Fixed
- Regen conformance goldens for memory-template shared ref (76→77 tier-1)
3f06a13 - Invariant-safe wording in closure guidance and execution skill
47559d7
Docs
- Stop-Slop renamed anti-slop in tests and headers
aadb158 - Report stale files in list --check health sentence
a10d735 - Drop features grammar + safety prose, point to explain CLI
2035d5b
Housekeeping
- Release v1.0.0
5f50bbe - Merge pull request #57 from ionivetech/feat/repo-memory
8029921- feat: curated repo memory (MEMORY.md template, lessons-skill read path, validator, docs)
- Merge pull request #56 from ionivetech/feat/lean-efficiency
86694ef- feat: native lean-efficiency + readable docs (host skills, human reports, PII scrub, link repair)
- Merge pull request #55 from ionivetech/feat/compact-mvp
c257a8b- Feat: compact install payload + features= extensions + explain CLI + docs reshape + intents + drift detector
v0.9.3
87 changes since v0.9.2
Invariants
- Fixed Register state-command router never/always invariants
e06b041
Golden
- Fixed Sync tier-1 skill count to 76 for state-router reference
9a3e54f
Ci
- Fixed Literal 12-platform count so N9 gate bites
88d9480 - Fixed Restore selftest anchors, config parity, invariant rows
ebfc00d - Fixed Restore canonical strings, thresholds, metric formats
5f92a98
Tests
- Fixed Stabilize subprocess-heavy tests under coverage load
869175d
Docs
- Fixed Restore source-backed pattern block in lanes.md
e159849 - Make state-command router a crew-wide orchestration capability across all harnesses
cf7d4f3 - Tighter tour, per-harness install, fixture-shaped sample
d2eddec - Git and root-cause feature sections, coverage rule
fee7afc - Collapsible install, migration feature, writing rules 16-17
d500907 - Task-id commits, ledger hygiene, stack gates, prod smoke
be57217 - Flaky quarantine, review scope, waiver routing consistency
a8e11a2 - Flaky verdicts, delta quality, waiver records for audit gates
62d9163 - Plan amendment loop and task-id commits for execution
cdc6791 - Effort calibration, contracts, green gates, pre-mortem for plans
78fbefc - Falsifiable options and mandatory stop handoffs
64f0574 - Layered execution graph and unblocks column for plans
9b158d9 - Translate gate templates to English
59e46db - Crew-voice approval format for flow gates
196dafa - Follow bun:test move
b532011 - Breathing lines for readme docs index
099c277 - Close phase 1, delete working audit
b787b7f - Complete features catalog
cef8aa8 - Deepen README
d940717 - Re-target audit to professional budgets
fae3262 - Set professional budgets and breathing prose
5074bc5 - Restore per-harness installs
865a154 - Sell features
ac05486 - Sell README
afa9f7a - Re-target audit for persuasion
28577ca - Revise writing rules to sell
2f492dc - Rewrite root for phase 1
ddad34d - Rewrite install for phase 1
60681a6 - Rewrite reference for phase 1
51d88bf - Rewrite concepts for phase 1
6b04028 - Rewrite stubs for phase 1
ebbdfe5 - Rewrite modes for phase 1
2763315 - Rewrite workflow for phase 1
973a30f - Rewrite audit-trail for phase 1
3158402 - Rewrite harness-matrix for phase 1
c877b40 - Rewrite getting-started for phase 1
da0ce7d - Rewrite config for phase 1
a0209d0 - Rewrite cost for phase 1
8d53ade - Rewrite features for phase 1
b2bc527 - Reshape runbooks to one skeleton
6ec691e - Rewrite readme under 800 words
7b5c208 - Audit pages for phase 1 rewrite
0cbea4b - Add contributing docs writing rules
42c25e1
Skills
- Fixed Register read-only-tree lines with existing invariant buckets
e0ed833 - Docs Auto/semi continuation needs no lanjut
ce2a34a - Docs Checkpoint read-only tree rule
07b87b3 - Docs Inline-first wording, banner owned by main thread
bafa637
Guards
- New Block tree-mutating git commands
02bc337
Hooks
- Fixed Engagement marker ensures default config
e4e5371
New
- /mugiwara routes CLI state commands, bare archive/handoff/sign list picker
d5c5ba6 - Migration skill with expand-contract and tested rollback
f4b06e4 - Gate-selftest bun:test swap and fast mode
a647c78 - Coverage-gate reads lcov
03ac380 - Detailed pr-verdict spec with checkbox checklists
aee93e8 - Cost defaults to all-missions table
9dd1882 - Gate docs writing rules with --check-writing
c54c9c5
Fixed
- Register migration/doc invariants so check-invariants and gate-selftest pass
ad32493 - Migrate test imports vitest->bun:test so clean-install typecheck passes
ef7e316 - Test seams for bun:test (homeDir, readdir order)
0861369 - Word verdict spec to satisfy invariant mapping
fa87c36 - Drop duplicate stale flag, stringify cli output in test
5f8098d - P2 UX batch — solo flag, trail docs, run message, solo hint, migrate warn, banner emoji, wording templates, bun x
e59f7a8 - Gate context budget on stateless missions
0a025db - Count code-by-extension in path-weighted lane sizing
cdd48db - Parse flow-style policy arrays instead of fail-open
d395774
Refactored
- Rename clean flags to --include-live and --stale
⚠️ BREAKINGe3468d4 - Fold blame into handoff --path
⚠️ BREAKING08a2044 - Move initiative command under plan
⚠️ BREAKING1d60509 - Fold claim-audit into checkpoint adversarial depth
⚠️ BREAKING1ac5a6a
Housekeeping
- Release v0.9.3
5badd86 - Merge pull request #54 from ionivetech/feat/mugiwara-cli-router
a8d2268- feat: /mugiwara routes all CLI state commands; bare archive/handoff/sign list pickers instead of usage errors
- Merge branch 'main' of github.com:ionivetech/mugiwara into feat/mugiwara-cli-router
4f4a117 - Merge pull request #53 from ionivetech/chore/dep-upgrade-bun-vitest
4289f69- chore: migrate test runner from vitest to bun:test, pin Bun 1.4.2 in CI
- Cover homeDir HOME-empty fallback
410702b - Pin Bun 1.4.2 in CI
5afe516 - Swap runner to bun:test, drop vitest
4277643 - Merge pull request #52 from ionivetech/feat/fix-batch-policy-lane-context-ux
5ad160e- fix: enterprise test findings + P3 trim (breaking: skills 21→20, CLI 20→18)
- Rebuild hooks bundle after run.ts import cleanup
d73c152 - Sync metrics, goldens, and measured docs to 20 skills
b4c034e - Merge pull request #51 from ionivetech/feat/phase-1-docs
067e45f- docs: rewrite readme, docs, and runbooks that sell (roadmap phase 1)
- Merge pull request #50 from ionivetech/feature/fix-inline-banners-config
5dbc91d- enforce crew discipline: config-ensure, inline-first, banner ownership, git guards
v0.9.2
11 changes since v0.9.1
Readme
- Docs Link the eight runbooks from the Docs section
d545026
Cli
- Housekeeping Cover short savepoint, join, roster picker, and orphan branches
1efdc59
Gates
- Housekeeping Removed-key gate, runbook-command gate, roster-section gate, one mutation per fix
3ea4c20
Team
- Housekeeping 18 cases covering roster, closure, and state integrity
b0e6afd
Closure
- New Roster-derived posture, shared closure gate, union member list, roster picker, short savepoint, join
381c694
Savepoint
- New Resolve member from the active-member cache; remove team_member and team_members
d44d04f
Planning
- New Generate the sub-mission table from the Flow 0 roster
a4eb0d4
Flow0
- New Ask solo or team in guided and semi, collect the roster
0d585d9
Docs
- Sync every page with the roster model; rewrite openings to lead with the problem
044069d
Housekeeping
- Release v0.9.2
d6b547b - Merge pull request #49 from ionivetech/feat/team-roster-and-docs
9d99ea9- feat: team roster in mission, state integrity, docs and runbooks
v0.9.1
45 changes since v0.9.0
Check Ins
- Fixed Keep banner invariant on one line for the mechanism gate
dfda4f0
Config
- New Auto_commit default off; template example names
fe82f19 - New Auto_commit default off; template names John Doe/Jane Smith
079133c
Mission
- Docs Archive seamless-pipeline (plan + report + pr-verdict)
65c2c91 - Docs Closure summary + PR verdict (seamless-pipeline)
6b6dc87
Cli
- Housekeeping Cover team migrate, usage errors, sign keygen, unknown target
b474286 - Housekeeping Cover team migrate, usage errors, sign keygen, unknown target
ac635d9
Initiative
- Housekeeping CLI-level conflict-check, status, marketplace error (N1/N9)
72324e8 - New Restore mugiwara initiative status + conflict-check (N1)
af191a9
Gates
- New Banner/slash/summary/platform checks + N1-N9 mutations (5.x)
51d93fd - New Compare config enum values docs-vs-code both directions (N6)
9a6dc07 - New Check CLI verbs named in prose exist in src/cli.ts (N4)
d17eb13
Install
- New Name marketplace path for cursor/kimi/pi + README 9+3 split (N9)
9181386
Mode
- Docs Mark mugiwara mode as in-session, no slash form (N8)
07df95c
Lessons
- Docs Remove nonexistent lessons import promise (N7)
1cf3598
Hooks
- New Banner verification via transcript scan + last_banner_flow (N2)
5828c72
Output
- New Flow summary line contract + red-flag requirement in 7 skills (N5)
eb85aaf
Banners
- Fixed Unconditional heading form, model never emits ANSI (N2)
15d7f5e
Savepoint
- Fixed Accept documented quick depth, alias lean to it (N3)
4d75aa9
Fixed
- Write-metrics syncs the README table (no more first-push red)
e474096- The script already computes every number; now it writes the two README rows too. --check-readme-metrics stays as backstop. Verified: stale 320 -> run -> 322, gate green.
- Savepoint counts the todos mirror first (provenance 0/N)
7f60ff0- Plan-only counting left finished missions reading 0/N when the plan carries no boxes or a different-granularity list. Mirror wins when it has boxes; plan and sub-plan fallbacks unchanged. Mirror test + E7 mutation; selftest green.
- Never resolve symlinks in artifact walks (R1)
a065cdf- Dirent symlinks report isDirectory() false, so the check must come first. Guard + plugin aligned, fixture test proves outside-target freshness is ignored.
- Gate the prose-only class with --check-invariants (5.2)
23d01d6- enforcement.md maps every invariant to its mechanism or an accepted prose-only reason. Validator requires each never/always/MUST line to match a concept and the matrix guard rows to exist. Wiring gate learns hooks' ../src imports (guards.ts).
- Port enforcement to opencode, honestly recorded (E5)
cf09b72- Stage A confirmed tool.execute.before + session.idle exist. Shared predicates in src/guards.ts (parity-tested mirror in plugin). tool hook denies irreversibles; session.idle surfaces triage gaps. Matrix states per-tier enforcement incl. warn degradation.
- Warn on work with no flow banner (E6)
2220ba1- Banner check lives in pipeline-guard over session-written mission files (Luffy rule 10 already requires per-flow-stage log sections). Not in the marker: no hook payload carries response text. Warning only, exit 0 always.
- PreToolUse guard for irreversible commands (E4)
304ed08- Rule 13 had zero mechanisms. Deny 10 command classes before they run; feature-branch pushes and reads stay allowed. Registered in hooks.json, claude installer events, and HOOK_ENTRIES. Fail open.
- Fire pipeline-guard on artifact work, not just source (E3)
7be4b9f- Brainstorm/spec/plan work escaped the source-only predicate. Session-scoped artifact scan (first_seen, mirrors planTouched) beside sourceChangedNow. Fail open throughout.
- Point luffy rule 8 at the decision log (E8)
9820a56- Rule 8 referenced obsolete logs/; state lives in .mugiwara/missions//decisions.md.
- Cover luffy in the entry-protocol gate (E2)
d546176- The hub-rule gate skipped luffy-orchestrator outright, which is why a captain with no checklist shipped. Require ## Before you start on all 14 agents; Return-to-Luffy stays Luffy-exempt.
- Give luffy-orchestrator an entry protocol (E1)
6d965bb- Captain owned Flow 0 but carried no pre-flight checklist. Add ## Before you start with the never-do-crew-work routing rule.
Refactored
- Extract session-scan helpers (F1, F2)
a0102eb- bannerThisSession 31->27, sessionWorkNoTriage 47->15 LOC. Shared sessionStartFrom in guard; probe helpers in plugin. Behavior identical, hooks+plugin tests 59/59.
Docs
- Sync README metrics (pointers 320→322)
c108056- Two new reference pointers from the luffy entry protocol. Metrics file regenerated via write-metrics.ts.
- Provenance 10/10, drop resurrected session state
ebfda1d - Acceptance 10/10, refreshed closure trail
3268466 - Register enforcement-gaps in mission index
810544e - Enforcement-gaps mission trail (plan + report + verdict)
54f33b8 - Promote the terminal prohibition where it can be read (E4)
1792f90- Ship SKILL ## Never, security threat-model entry, harness-matrix guard row. opencode cell marked under-verification until T9.
Housekeeping
- Release v0.9.1
3a4d0b1 - Merge pull request #48 from ionivetech/fix/seamless-pipeline
131e990- fix: seamless pipeline — restore initiative, banner discipline, config value gates
- Stop tracking .mugiwara/ local state
23da33c - Merge auto-commit default off into seamless-pipeline
eb9952f - Merge pull request #47 from ionivetech/enforcement-gaps
6aeac9c- Fix: close 8 enforcement gaps (Flow 0 hole, terminal prohibition, 11 harnesses, visibility, hooks tests, invariant gate)
- Direct unit cover for src/guards.ts (D1)
4117321- Hook tests only reach the table via subprocess; pin all 10 deny classes + allows + message in-process. No timeout surface.
- One mutation per enforcement fix (5.1)
1e363f4- E1 luffy section, E2 exemption blindness proof, E3 source-only predicate, E4 table row, E5 over-broad push, E6 matrix row. gate-selftest 111/111. Step-1 path shape fixed to satisfy verify-install.
- Cover the untested hooks (E7)
f848ae0- 15 cases: E3 artifact predicate, malformed-state behavior, pretool deny/allow incl. both over-correction guards, savepoint-hook mode, tracker turn, executor fact. Zero overlap with enforcement.test.ts.