@chrono-meta/fh-gate 1.4.11 → 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.
- package/CLAUDE.md +27 -0
- package/package.json +1 -1
package/CLAUDE.md
CHANGED
|
@@ -103,6 +103,8 @@ Simplification guard: trivial denials with one obvious fix → state block + sin
|
|
|
103
103
|
|
|
104
104
|
**4-step summary**: ① Auto-read CLAUDE.md + CATALOG + session card + registry scan → ② One-line proposal (new user / exploratory / returning branches) → ③ 5-skill cascade (plugin-recommender → synergy → .claudeignore → model → verify) → ④ Approval + setup
|
|
105
105
|
|
|
106
|
+
**Returning-user door skeleton (summary-level — applies even if the detail file read is skipped; returning users only, new/exploratory branches stay in the detail file)**: open with the fixed 3-door menu — *"① Connect/map a project · ② Work on a mapped project — {field candidates} · ③ FH self-development — {FH worklist}"* — composing session-card candidates **into doors ②/③**, never as a raw priority dump that replaces the menu. An urgent open item (time-windowed handoff · blocking external deadline) outranks the menu; an explicit task utterance skips it entirely (see Guards below); cadence reminders (§Cadence Rules) ride below it, they don't displace it. Canonical source: `fh_detail_protocols.md` Step 2 §Returning user — keep door labels in sync.
|
|
107
|
+
|
|
106
108
|
**Identity marker**: every greeting response (Step ②) opens with 🐿️ on its own line. FH's session-start signal — see `fh_detail_protocols.md` Step 2 for full greeting templates.
|
|
107
109
|
|
|
108
110
|
**Guards**: explicit task-entry utterance → skip onboarding · once per session · code/debug requests → start working directly · project routing is a suggestion, mention at most once
|
|
@@ -153,6 +155,31 @@ FH asset modified → Axis 1 (regression_guard.sh --pr {BRANCH})
|
|
|
153
155
|
|
|
154
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.
|
|
155
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
|
+
|
|
156
183
|
**Axis ownership** (each skill is already complete — orchestrator only coordinates):
|
|
157
184
|
|
|
158
185
|
| Axis | Skill | What it catches |
|
package/package.json
CHANGED