@chrono-meta/fh-gate 1.4.12 → 1.4.13

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.
Files changed (2) hide show
  1. package/CLAUDE.md +25 -0
  2. package/package.json +1 -1
package/CLAUDE.md CHANGED
@@ -155,6 +155,31 @@ FH asset modified → Axis 1 (regression_guard.sh --pr {BRANCH})
155
155
 
156
156
  **Unavailable axis**: If steel-quench or phantom-quench are not installed, note `Axis N: skipped (skill unavailable)` and proceed. Axis 1 PASS alone is sufficient to unblock a PR when Axes 2–3 are unavailable. Axis 4 (edit-manifest): if the skill is not installed, substitute a manual one-line prediction appended to `tracks/_meta/edit_manifest.yaml` — the record is what matters, not the skill.
157
157
 
158
+ **Target-tier sim gate (Mode D supplement — all change classes: fix, improvement, new asset)**: the
159
+ discriminator is not the change class but the **enforcement column**: does the asset's effect depend on
160
+ a session *following prose instructions* (salience-dependent — rules, onboarding scaffolds, SKILL.md
161
+ trigger behavior), or is it mechanically enforced (hooks, scripts — tier-independent, normal 4-axis
162
+ path, exempt)? For salience-dependent changes, verify with a **blind simulation in an isolated Agent**
163
+ (no main-session reasoning inherited — isolation is the FH mechanism that keeps the sim honest) with
164
+ `model:` pinned to the tier the change must survive on. Application strength scales with context:
165
+ - **Mode D (FH self-dev) — near-mandatory**: any salience-dependent FH asset change runs the sim
166
+ before Done. Mandatory without exception when the change fixes a behavioral miss *observed* on a
167
+ specific tier — sim at that same tier (the verification tier must match the failure tier; fixing on
168
+ a stronger model and verifying by review alone leaves "does it fire on the weaker tier?" unanswered).
169
+ - **Field harness assets (templates/ propagated via Full-Harness Mode) — conditional**: sim at the
170
+ default field tier (Sonnet) when the behavior is load-bearing (gates, onboarding, destructive/publish
171
+ paths); skip with a one-line note for low-stakes prose.
172
+ - **Light mapping (tracks/ registration, CATALOG entries) — exempt**, alongside mechanical changes
173
+ (hook logic, scripts, file moves — tier-independent by construction).
174
+
175
+ **Autonomy floor**: the skip/run *judgment* on conditional cases is itself depth-sensitive — trust it
176
+ only at opus-tier or above. A below-floor orchestrator does not silently skip: it runs the sim or asks
177
+ the operator (one line), mirroring §Floor governance.
178
+
179
+ If `model:`-pinned dispatch is unavailable (plan/billing gate), fall back to a cross-session headless
180
+ run (`claude -p "<trigger>" --model <tier>` in the target cwd) — stronger isolation, zero instruction
181
+ contamination. Record sim results in the Axes 2–3 marker + sub-agent invocation log.
182
+
158
183
  **Axis ownership** (each skill is already complete — orchestrator only coordinates):
159
184
 
160
185
  | Axis | Skill | What it catches |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chrono-meta/fh-gate",
3
- "version": "1.4.12",
3
+ "version": "1.4.13",
4
4
  "description": "FH runtime adapters — run FH governance, skills, and agents via Claude or Codex with machine-parseable gates.",
5
5
  "license": "MIT",
6
6
  "keywords": [