arkgate 2.9.1 → 2.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,34 @@ All notable changes to ArkGate (`arkgate`; formerly `ark-runtime-kernel`) are do
4
4
 
5
5
  ## Unreleased
6
6
 
7
+ ## 2.9.2 — 2026-07-09
8
+
9
+ Skill surface hardening: dual-engine, explore, STOP handoffs, AGENTS routing, subagent fan-out.
10
+ **No intentional CLI flag or JSON shape breaks.**
11
+
12
+ ### Added
13
+
14
+ - **`/ark-explore` skill:** exploratory architecture reconnaissance — product map, entry
15
+ points, coupling hotspots, false-green risk, ranked *suggestions* (not only residual
16
+ violations). CLI remains a sensor; host agent reads the real tree.
17
+ - **Skill completion contract:** every `/ark-*` template ends with fixed
18
+ `### Completion` fields (Sensor / Opened / Result / Handoff / Incomplete?) —
19
+ **skill incomplete if missing**.
20
+ - **Hard STOP handoffs:** critical paths (false-green, concentrated edge, bulk debt,
21
+ wrong skill) use `STOP — do not continue this skill as complete` + named next skill.
22
+ - **AGENTS skill routing table:** trigger → skill map in generated `AGENTS.md` while
23
+ keeping `/ark-autopilot` as the default when unsure.
24
+ - **Subagent fan-out protocol:** every `/ark-*` skill documents optional **parallel
25
+ subagents** when the host supports them (disjoint read-only scopes + parent merge);
26
+ otherwise **fall back to sequential**. AGENTS.md repeats the rule.
27
+
28
+ ### Changed
29
+
30
+ - **Skills dual-engine (deterministic + exploratory):** **all** shipped skill templates
31
+ require dual-engine behavior (CLI sensor + real source/product pass where applicable).
32
+ Plan empty ≠ architecture healthy without explore. Refresh installed skills with
33
+ `ark-check --install-agent-gates --skills-only --force`.
34
+
7
35
  ## 2.9.1 — 2026-07-09
8
36
 
9
37
  Field-install honesty: non-TTY start, baseline→CI sync, pin, false-green soft block, Grok defaults.
package/README.md CHANGED
@@ -144,19 +144,25 @@ npx arkgate-check --coverage
144
144
  Install once: `npx arkgate-check --install-agent-gates`
145
145
  (`--tools claude,cursor,codex,grok` to pick hosts.)
146
146
 
147
- **Default is always `/ark-autopilot`.** The rest are escapes, not a second curriculum:
147
+ **Default is always `/ark-autopilot`.** The rest are escapes, not a second curriculum.
148
+ Generated `AGENTS.md` includes a **skill routing table** (trigger → skill). Skills are
149
+ **dual-engine** (CLI sensor + read real source) and end with a fixed **completion contract**;
150
+ critical handoffs say **STOP** and name the next skill (hosts must follow — markdown cannot chain calls).
151
+ When the host allows it, skills may **fan out parallel subagents** (disjoint scopes);
152
+ otherwise they **fall back to sequential**.
148
153
 
149
154
  | Need | Skill |
150
155
  |------|--------|
151
156
  | Only the apply loop (plan already exists) | `/ark-loop` |
152
157
  | Empty greenfield shape/scaffold | `/ark-architect` |
153
158
  | Deep brownfield / manifest mining alone | `/ark-adopt` |
159
+ | Exploratory map of the real product (no apply) | `/ark-explore` |
154
160
  | New file placement | `/ark-place` |
155
161
  | Gate violation on a change | `/ark-fix` |
156
162
  | Design trade-offs within the contract (no package LLM) | `/ark-think` |
157
163
  | Edit `ark.config.json` safely | `/ark-contract` |
158
164
  | Plain-language tour of the report | `/ark-explain` |
159
- | Deep “what am I not using?” audit | `/ark-coverage` |
165
+ | Deep coverage + opportunities audit | `/ark-coverage` |
160
166
  | Migrate hand-rolled bus/outbox (TS) | `/ark-runtime` |
161
167
  | Bump ArkGate + refresh all agent hosts | `/ark-upgrade` |
162
168
 
@@ -465,13 +465,39 @@ export function agentInstructions(root) {
465
465
 
466
466
  1. If \`ark.config.json\` is missing: run \`${startCmd}\` once.
467
467
  2. For adoption / cleanup / “make architecture sound”: run the **\`/ark-autopilot\`** skill
468
- (origin report → adopt → plan → safe fixes → gates). Do **not** invent a parallel workflow
469
- from the long skill list.
468
+ (origin report → adopt → plan → safe fixes → gates). Do **not** invent a second
469
+ architecture curriculum outside the routing table below — when a trigger matches, use
470
+ that skill; when unsure, stay on autopilot.
470
471
  3. Status anytime: \`${doctorCmd}\` (status light + next action — not a mode picker).
471
472
  4. After ordinary feature edits: run \`${checkCmd}\`. On violations → **\`/ark-fix\`** (or
472
473
  \`/ark-place\` for new files, \`/ark-contract\` only if the contract itself is wrong).
473
474
 
474
- Other \`/ark-*\` skills are optional escapes (adopt, coverage, runtime, …), not required steps.
475
+ Skills are **dual-engine**: deterministic CLI sensors + exploratory read of *this* repo — not JSON-only wrappers.
476
+ When a skill says **STOP — do not continue this skill as complete**, stop and invoke the named handoff skill.
477
+
478
+ ### Subagent fan-out
479
+ If the host supports **parallel subagents**, skills may ask you to fan out **read-only**
480
+ scouts (disjoint path scopes) and merge in the parent. If the host does **not**,
481
+ **fall back to sequential** — one cluster/step at a time. Never parallel-write the same
482
+ files; never weaken the gate via subagents.
483
+
484
+ ## Skill routing (triggers → skill)
485
+
486
+ | When | Invoke |
487
+ |------|--------|
488
+ | Unsure / make architecture sound | **/ark-autopilot** (default) |
489
+ | Need map / opportunities only (no apply) | \`/ark-explore\` |
490
+ | Greenfield shape / empty tree | \`/ark-architect\` |
491
+ | Brownfield / wrong contract / false-green | \`/ark-adopt\` then \`/ark-contract\` if globs wrong |
492
+ | Edit \`ark.config.json\` layers/rules/intents | \`/ark-contract\` |
493
+ | New file “where does this go?” | \`/ark-place\` |
494
+ | Gate violation on a change | \`/ark-fix\` |
495
+ | Drive plan to goal.met | \`/ark-loop\` |
496
+ | Deep coverage + ranked audit | \`/ark-coverage\` |
497
+ | Design trade-offs (no package LLM) | \`/ark-think\` |
498
+ | Explain / HTML report tour | \`/ark-explain\` |
499
+ | Bump arkgate + refresh hosts | \`/ark-upgrade\` |
500
+ | Optional runtime kernel migrate | \`/ark-runtime\` |
475
501
 
476
502
  ## Before editing TypeScript or JavaScript source files
477
503
 
package/dist/index.cjs CHANGED
@@ -80,7 +80,7 @@ __export(index_exports, {
80
80
  module.exports = __toCommonJS(index_exports);
81
81
 
82
82
  // src/version.ts
83
- var version = "2.9.1";
83
+ var version = "2.9.2";
84
84
 
85
85
  // src/kernel/intent/IntentRegistry.ts
86
86
  var IntentRegistry = class {