@chrono-meta/fh-gate 1.4.56 → 1.4.57
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-plugin/marketplace.json +2 -2
- package/CLAUDE.md +1 -1
- package/knowledge/shared/harness-core/fh_detail_protocols.md +1 -1
- package/knowledge/shared/harness-core/harness_incubator_doctrine.md +24 -6
- package/knowledge/shared/rules/auto_project_mapping.md +2 -1
- package/package.json +1 -1
- package/plugins/fh-commons/.claude-plugin/plugin.json +1 -1
- package/plugins/fh-meta/.claude-plugin/plugin.json +1 -1
|
@@ -11,13 +11,13 @@
|
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "fh-meta",
|
|
14
|
-
"version": "1.4.
|
|
14
|
+
"version": "1.4.57",
|
|
15
15
|
"description": "Hub meta-operations toolkit — 33 skills + 7 agents. New in 1.4.53: `fh-codex-doctor` (npm bin) — Codex adapter drift scanner; reads the documented M1/M2/M3 skill tier map + skill/agent source and reports codex-native/adapter-required/claude-native/unclassified per unit, wired into `npm test`/`prepublishOnly` (fail-closed on unclassified Claude-native primitives). New in 1.4.49: steel-quench gains Step 0.6 Verdict-Invariance Probe (groundedness axis — a load-bearing judged gate's verdict must track behavior, not rubric phrasing; measured flip-count over cross-family paraphrases; arXiv:2605.06161 Policy Invariance anchor); multi_model_sidecar_strategy §Vendor-native harness (a model is strongest in its own vendor CLI — Claude/CC, GPT/codex, Gemini/Antigravity; a universal router degrades all of them, so it stays an autocomplete/QA sidecar, never orchestration); predelete_check.sh fail-closed rewrite; memory-hygiene A-TMA anchor. New in 1.4.48: phantom-quench + steel-quench gain external frontier anchors (arXiv:2607.02052 package-hallucination; arXiv:2607.02057 prompt-coverage-adequacy); README model-flat claim reframed from a per-release point-curve to structural invariants (operation flattens across tiers; depth tier-order fixed within a generation). New in 1.4.47: onboarding step ① surfaces the Mode D companion-store session-start load in the auto-read salience anchor (previously only in the local binding + rules, so a greeting could skip the load). New in 1.4.46: context-doctor command-output axis (route to rtk/proxy for verbose CLI stdout, complementing .claudeignore; risk-gated to token-scarce envs). New in 1.4.41: context-doctor 2026 trigger vocab (context engineering/rot/collapse) + phantom-citation hardening; hub measurement-integrity-checklist (cross-model measurement pre-flight: display-name pin/reps≥3/discriminating probe). New in 1.4.40: install-wizard queryable-wiki scaffold (INDEX + session-start read + R/W/C ingest). New in 1.4.39: auto-decorrelation (cross-family verifier sidecar recruitment) + video-ingest (capability-routed video ingestion). New in 1.4.x: verify-axis check-class taxonomy (mandatory-pass/measured/judged), no-reinvention Tier-0 inventory, 7-class failure taxonomy, Destructive-Op Gate, Wave-T (Temper), tier-floor governance, Mode D Model Notice, FC consent lane, default-Sonnet guidance. New in 1.3.0: public-surface-audit, field-harvest Mode B auto-trigger, 4-axis gate scope ext. Validated cross-CLI: Claude Code, Codex, Gemini.",
|
|
16
16
|
"source": "./plugins/fh-meta"
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
"name": "fh-commons",
|
|
20
|
-
"version": "1.4.
|
|
20
|
+
"version": "1.4.57",
|
|
21
21
|
"description": "Project-agnostic utility skills — 4 skills (convergence-loop · deliberation · mcp-circuit-breaker · token-budget-gate) + 1 agent (quench-challenger). Domain-independent utilities transplantable into any project.",
|
|
22
22
|
"source": "./plugins/fh-commons"
|
|
23
23
|
}
|
package/CLAUDE.md
CHANGED
|
@@ -148,7 +148,7 @@ Simplification guard: trivial denials with one obvious fix → state block + sin
|
|
|
148
148
|
|
|
149
149
|
**Greeting branch + door skeleton (summary-level — applies even if the detail file read is skipped)**: the branch test is **mechanical local state — session files under `tracks/`** — never git log / CATALOG residue (a fresh clone carries full history but zero session files: it is a NEW install — origin: a fresh-clone sonnet sim rendered the returning menu off commit messages, `fh_signal_2026-06-11` FP8). Every variant opens with **🐿️ then an identity-revealing welcome line on the SAME line** (🐿️ is no longer alone on its own line), followed by the menu — one salience unit, not a separate rule. (Put a space after 🐿️; the exact count is **not significant** — a markdown renderer collapses multiple mid-line spaces to one — so the verifiable invariant is *same-line*, NOT a space count.) Welcome line by branch: new / exploratory = "Welcome to FH." · returning = "Welcome back to FH." · operator (FH-dev state) = "The FH operator — good to see you." (rendered in the user's language **as a plain, natural translation of the pinned phrase — not an invented coinage** (cf. the operator-caught `안 조종실…` mistranslation); the lid/onboarding-smoothness matters even though it is not the substance).
|
|
150
150
|
|
|
151
|
-
- **New user** (no session files AND no mapped project tracks under `tracks/` — fresh clone/install; underscore
|
|
151
|
+
- **New user** (no session files AND no mapped project tracks under `tracks/` — fresh clone/install; **any underscore-prefixed dir** (`tracks/_*` — `_meta`/`_audit`/`_contrib`/`_chamber`…) doesn't count, general rule not a closed list — `_chamber` holds incubation chamber runs, never mapped projects): 2-door starter, never the returning menu —
|
|
152
152
|
|
|
153
153
|
> 🐿️ **Welcome to FH.** *Looks like you're new here! ① Create your first project (guided) · ② Map an existing project — and I can run `/install-wizard` to finish initial setup.*
|
|
154
154
|
|
|
@@ -67,7 +67,7 @@ install too — `/install-wizard` records HUB/ROOT so the runtime never guesses;
|
|
|
67
67
|
|
|
68
68
|
Identity marker: every greeting response opens with **🐿️ then an identity-revealing welcome line on the same line** (a space after 🐿️; exact count not significant — the renderer collapses multiple mid-line spaces — the invariant is *same-line*, not 🐿️ alone) — new / exploratory = "Welcome to FH." · returning = "Welcome back to FH." · operator (FH-dev state) = "The FH operator — good to see you." This is FH's session-start signal — friendly, consistent, distinct; the onboarding-smoothness / lid matters even though it is not the substance. The marker + welcome are **part of each skeleton itself** (one salience unit with the menu — do not strip it when composing doors; mirrored in CLAUDE.md §Active Onboarding).
|
|
69
69
|
|
|
70
|
-
**Branch test (mechanical — local state only)**: returning = session files exist (any `tracks/**/session_*.md` or `tracks/_meta/*.md` beyond `.gitkeep`) **OR** mapped project tracks exist (`tracks/{name}/` dirs — underscore
|
|
70
|
+
**Branch test (mechanical — local state only)**: returning = session files exist (any `tracks/**/session_*.md` or `tracks/_meta/*.md` beyond `.gitkeep`) **OR** mapped project tracks exist (`tracks/{name}/` dirs — **any underscore-prefixed dir doesn't count** (`tracks/_*`, general rule not a closed list: `_meta`/`_audit`/`_contrib`/`_chamber`…); covers mapped-but-not-yet-synced users). **Never infer the branch from git log or CATALOG residue** — a fresh clone carries full commit history but zero session files: it is a NEW install (origin: fresh-clone sonnet sim rendered the returning menu off commit messages, `fh_signal_2026-06-11` FP8).
|
|
71
71
|
|
|
72
72
|
**New user** (neither condition holds — fresh clone/install): 2-door starter, never the returning menu —
|
|
73
73
|
> 🐿️ **Welcome to FH.** *Looks like you're new here! ① Create your first project (guided) · ② Map an existing project — and I can run `/install-wizard` to finish initial setup.*
|
|
@@ -85,12 +85,30 @@ chamber, then landed in the field repo.
|
|
|
85
85
|
|
|
86
86
|
**Minimal execution skeleton (when the operator accepts simulate-first)**: the procedure is currently
|
|
87
87
|
*judged/ad-hoc*, standardization deferred to a second real occurrence (measured-trigger, per the
|
|
88
|
-
evidence-threshold build discipline): ① open a chamber workspace (a worktree or `tracks/{project}
|
|
89
|
-
— never a real project repo
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
88
|
+
evidence-threshold build discipline): ① open a chamber workspace (a worktree or `tracks/_chamber/{project}/`
|
|
89
|
+
— never a real project repo; the underscore prefix rides the onboarding carve-out for meta dirs
|
|
90
|
+
(any `tracks/_*` dir — general rule, stated as such in the branch tests), so a **chamber run** never
|
|
91
|
+
registers as a mapped project and never pollutes the returning-menu door counts — a
|
|
92
|
+
`tracks/{project}-sim/` path would); ② scope the run through `goal-quench`'s budget
|
|
93
|
+
gate (chamber runs are the expensive path — cap them); ③ drive the simulation with existing FH assets
|
|
94
|
+
(dispatch, gates, live surfaces as needed); ④ the **Emission Gate** — the emit judgment "the simulation
|
|
95
|
+
holds" — is a *judged* call paired with the run's own mechanical evidence (tests passing, gate verdicts,
|
|
96
|
+
reproduced flows), decided **with the operator (HITL)**; ⑤ on emit, route through Full-Harness Mode /
|
|
97
|
+
field scaffolds as usual (`auto_project_mapping.md §6` — that mode is also this chamber's emit terminus).
|
|
98
|
+
|
|
99
|
+
*Vocabulary reservation (term hygiene, not standardization)*: a run of this skeleton is a **chamber
|
|
100
|
+
run** — going forward, run/workspace/log labels use "chamber" for incubation and keep "sim/simulation"
|
|
101
|
+
for *verification* sims (target-tier blind sim, sim-conductor persona sims). Established names are
|
|
102
|
+
grandfathered, not renamed: the Autopilot branch stays **simulate-first**, and this section's
|
|
103
|
+
"simulation holds" phrasing stands — the reservation governs new labels (grep keys), not existing
|
|
104
|
+
doctrine prose. The Emission Gate and chamber-run labels exist so a second real occurrence is
|
|
105
|
+
recoverable from logs; the procedure itself stays evidence-gated as above.
|
|
106
|
+
*Routing baseline (measured)*: the Autopilot's simulate-first routing branch passed a Step 0.5
|
|
107
|
+
trigger-accuracy probe 2026-07-13 — 10/10 blind Sonnet sims (5 should-fire incl. 2 borderline, 5
|
|
108
|
+
should-not-fire incl. 3 borderline near-misses), 0 malformed verdicts. Scope honestly: an
|
|
109
|
+
authored-case baseline (single-draw per case; reps waived per measurement-integrity since every
|
|
110
|
+
first draw matched expected — see the 2026-07-13 subagent-invocations log entry), not a calibrated
|
|
111
|
+
accuracy estimate.
|
|
94
112
|
|
|
95
113
|
**Incubation unit — projects AND features**: incubation applies not only to new projects but to **new
|
|
96
114
|
capabilities of an existing harness**. A field harness's self-development is itself run inside the
|
|
@@ -66,7 +66,7 @@ Mapping complete: N projects
|
|
|
66
66
|
|
|
67
67
|
Basic mapping (steps 1–5) registers a project *lightly* (tracks/ + a starter CLAUDE.md + hub link). **Full-Harness Mode adds the project-local harness assets** — identity ① (Control Tower) propagating harness structure to a connected project; the *how* is executed via the Core Axis.
|
|
68
68
|
|
|
69
|
-
**Scope**: target *mapped* projects only. For FH-self setup / acceleration baseline (zshrc, sentinels, the FH self-gate) use `/install-wizard` — do **not** run §6 on the FH hub itself. **Prerequisite**: the project is already mapped (steps 1–5); §6 is strictly additive.
|
|
69
|
+
**Scope**: target *mapped* projects only. For FH-self setup / acceleration baseline (zshrc, sentinels, the FH self-gate) use `/install-wizard` — do **not** run §6 on the FH hub itself. **Prerequisite**: the project is already mapped (steps 1–5); §6 is strictly additive. This mode is also the **emit terminus of a chamber run** — a simulate-first incubation that holds routes here on emit (`harness_incubator_doctrine.md §3` Minimal execution skeleton ⑤).
|
|
70
70
|
|
|
71
71
|
**Triggers**: "harness-ify this project", "full harness setup", "프로젝트 하네스화", "promote to full harness", or an opt-in prompt offered right after a basic mapping (*"Promote {project} to a full harness now?"*).
|
|
72
72
|
|
|
@@ -121,6 +121,7 @@ The scaffold **enforces the creation gate by construction** — a field skill is
|
|
|
121
121
|
- **Do not overwrite existing project files** — if CLAUDE.md exists, propose block addition only
|
|
122
122
|
- **Warn when large monorepo detected** — repos with 10+ subprojects: ask "Which subproject is the track unit?"
|
|
123
123
|
- **Name collision** — if track name already exists, ask user to specify a new track name
|
|
124
|
+
- **Underscore prefix reserved** — a track name must not start with `_`: `tracks/_*` is the meta/chamber namespace the onboarding branch tests exclude from project counts (`_meta`/`_audit`/`_contrib`/`_chamber`…). Mapping a project as `tracks/_foo/` would make it invisible to the menu — rename (e.g. strip the underscore) before mapping
|
|
124
125
|
- **Pre-existing `.claude/` config is untrusted input, not a mapping detail** — a candidate project
|
|
125
126
|
(step 1 scan) may already carry a `.claude/settings.json` from a source FH did not author (a clone,
|
|
126
127
|
a fork, a prior contributor). Two disclosed Claude Code CVEs show that file class is a live RCE /
|
package/package.json
CHANGED