harness-everything 0.16.0 → 0.16.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/AGENTS.md +2 -2
- package/CHANGELOG.md +14 -0
- package/README.md +7 -7
- package/VERIFICATION.md +3 -3
- package/behavioral-evals/PAIRED-BENCHMARK.md +3 -3
- package/behavioral-evals/README.md +38 -32
- package/behavioral-evals/opencode-hardlock-live.js +6 -290
- package/behavioral-evals/opencode-reflection-gate-live.js +342 -0
- package/behavioral-evals/paired-benchmark.js +3 -3
- package/ci/consistency-check.js +20 -0
- package/ci/invariant-routing.test.js +58 -158
- package/ci/mechanism-2a-rule-of-3.test.js +73 -138
- package/ci/mechanism-2ac-atomic-commit-check.test.js +2 -2
- package/ci/mechanism-2af-worktree-isolation.test.js +38 -196
- package/ci/mechanism-2ah-workflow-lifecycle.test.js +20 -831
- package/ci/mechanism-2ai-workspace-fingerprint-batch.test.js +3 -4
- package/ci/mechanism-2b-boundary-guard.test.js +6 -16
- package/ci/mechanism-2e-scope-guard.test.js +8 -24
- package/ci/mechanism-2f-stop-gate.test.js +21 -75
- package/ci/mechanism-2n-opencode-plugin.test.js +13 -28
- package/ci/mechanism-31-opencode-hardlock-evidence.test.js +43 -99
- package/ci/openai-plugin-package.test.js +8 -8
- package/ci/openai-plugin-runtime.test.js +2 -2
- package/ci/router-workflow-plan.test.js +25 -6
- package/ci/self-evolve-loop.test.js +4 -1
- package/ci/workflow-execution-contract.test.js +51 -129
- package/ci/workflow-plan-consumers-edge.test.js +1 -1
- package/ci/workflow-plan-consumers.test.js +6 -6
- package/docs/architecture.md +21 -21
- package/docs/enforcement-locks.md +41 -102
- package/docs/mechanism-first-skill-mesh.md +2 -2
- package/docs/philosophy.md +2 -2
- package/docs/platform-capabilities.md +3 -3
- package/docs/routing.md +14 -14
- package/docs/workflow-runtime.md +80 -110
- package/evals/harness-everything/tasks/positive-tier1.yaml +1 -1
- package/evals/harness-everything/tasks/positive-tier2.yaml +1 -1
- package/evals/harness-everything/tasks/positive-tier3.yaml +1 -1
- package/evals/using-git-worktrees/tasks/positive-trigger.yaml +1 -1
- package/fable-mode/SKILL.md +1 -1
- package/fable-mode/agents/fable-orchestrator.md +7 -6
- package/fable-mode/execution-guardrails/SKILL.md +1 -1
- package/fable-mode/fable-haiku/SKILL.md +1 -1
- package/fable-mode/fable-opus/SKILL.md +1 -1
- package/fable-mode/fable-sonnet/SKILL.md +1 -1
- package/fable-mode/scripts/workflow-plan-consumer.js +4 -3
- package/harness-everything/SKILL.md +11 -11
- package/harness-everything/references/router-workflow-plan.md +2 -2
- package/harness-everything/references/triage-and-tiers.md +11 -11
- package/harness-everything/scripts/kernel-router-core.js +5 -5
- package/harness-everything/scripts/kernel-router.js +16 -21
- package/harness-everything/scripts/router-contract-core.js +1 -1
- package/hooks/hooks.json +10 -23
- package/hooks/scripts/atomic-commit-check.js +1 -1
- package/hooks/scripts/boundary-guard.js +4 -4
- package/hooks/scripts/contract-test.js +8 -11
- package/hooks/scripts/depth-guard.js +2 -2
- package/hooks/scripts/lib/workflow-runtime.js +24 -402
- package/hooks/scripts/rule-of-3-tracker.js +28 -31
- package/hooks/scripts/rule-of-3.js +4 -28
- package/hooks/scripts/state-persist.js +36 -136
- package/hooks/scripts/stop-gate.js +15 -48
- package/hooks/scripts/subagent-scope-guard.js +8 -8
- package/hooks/scripts/workflow-disposition.js +2 -10
- package/hooks/scripts/workflow-gate.js +33 -84
- package/hooks/scripts/workflow-mutation-denied.js +3 -15
- package/hooks/scripts/workflow-stop-gate.js +23 -38
- package/opencode-plugin/README.md +10 -13
- package/opencode-plugin/index.mjs +14 -30
- package/opencode-plugin/plugin.json +1 -1
- package/package.json +3 -2
- package/plugins/harness-everything/.codex-plugin/plugin.json +1 -1
- package/plugins/harness-everything/hooks/hooks.json +3 -3
- package/plugins/harness-everything/hooks/scripts/atomic-commit-check.js +1 -1
- package/plugins/harness-everything/hooks/scripts/boundary-guard.js +4 -4
- package/plugins/harness-everything/hooks/scripts/contract-test.js +8 -11
- package/plugins/harness-everything/hooks/scripts/depth-guard.js +2 -2
- package/plugins/harness-everything/hooks/scripts/lib/workflow-runtime.js +24 -402
- package/plugins/harness-everything/hooks/scripts/rule-of-3-tracker.js +28 -31
- package/plugins/harness-everything/hooks/scripts/rule-of-3.js +4 -28
- package/plugins/harness-everything/hooks/scripts/state-persist.js +36 -136
- package/plugins/harness-everything/hooks/scripts/stop-gate.js +15 -48
- package/plugins/harness-everything/hooks/scripts/subagent-scope-guard.js +8 -8
- package/plugins/harness-everything/hooks/scripts/workflow-disposition.js +2 -10
- package/plugins/harness-everything/hooks/scripts/workflow-gate.js +33 -84
- package/plugins/harness-everything/hooks/scripts/workflow-mutation-denied.js +3 -15
- package/plugins/harness-everything/hooks/scripts/workflow-stop-gate.js +23 -38
- package/plugins/harness-everything/plugin.json +1 -1
- package/plugins/harness-everything/scripts/lib/advisory-text.js +16 -29
- package/plugins/harness-everything/skills/fable-mode/SKILL.md +1 -1
- package/plugins/harness-everything/skills/fable-mode/agents/fable-orchestrator.md +7 -6
- package/plugins/harness-everything/skills/fable-mode/execution-guardrails/SKILL.md +1 -1
- package/plugins/harness-everything/skills/fable-mode/fable-haiku/SKILL.md +1 -1
- package/plugins/harness-everything/skills/fable-mode/fable-opus/SKILL.md +1 -1
- package/plugins/harness-everything/skills/fable-mode/fable-sonnet/SKILL.md +1 -1
- package/plugins/harness-everything/skills/fable-mode/scripts/workflow-plan-consumer.js +4 -3
- package/plugins/harness-everything/skills/harness-everything/SKILL.md +11 -11
- package/plugins/harness-everything/skills/harness-everything/references/router-workflow-plan.md +2 -2
- package/plugins/harness-everything/skills/harness-everything/references/triage-and-tiers.md +11 -11
- package/plugins/harness-everything/skills/harness-everything/scripts/kernel-router-core.js +5 -5
- package/plugins/harness-everything/skills/harness-everything/scripts/kernel-router.js +16 -21
- package/plugins/harness-everything/skills/harness-everything/scripts/router-contract-core.js +1 -1
- package/plugins/harness-everything/skills/using-git-worktrees/SKILL.md +5 -5
- package/plugins/harness-everything/skills/zoom-out/SKILL.md +3 -3
- package/plugins/harness-everything/skills/zoom-out/references/circuit-breaker.md +4 -4
- package/scripts/lib/advisory-text.js +16 -29
- package/using-git-worktrees/SKILL.md +5 -5
- package/zoom-out/SKILL.md +3 -3
- package/zoom-out/references/circuit-breaker.md +4 -4
|
@@ -7,35 +7,23 @@ const MARKER = "Harness OS Guidance (Advisory)";
|
|
|
7
7
|
|
|
8
8
|
const advisoryInstructions = [
|
|
9
9
|
`\n# ${MARKER}`,
|
|
10
|
-
`
|
|
11
|
-
`Treat the workflow contract below as required agent behavior, while keeping enforcement`,
|
|
12
|
-
`claims bounded by the host's verified capabilities.`,
|
|
10
|
+
`Harness is an observer/router/reminder layer on this surface; do not treat its workflow guidance as a hard scheduler.`,
|
|
13
11
|
``,
|
|
14
|
-
`## 🚦
|
|
15
|
-
`For
|
|
16
|
-
`1. Run \`npx github:dyphn1/Harness-everything next "<Brief summary of user's prompt>"
|
|
17
|
-
`2. For EVERY suggested skill, read its complete \`SKILL.md\` entry and
|
|
18
|
-
`3.
|
|
19
|
-
`4.
|
|
20
|
-
`5. Surface a compact checkpoint
|
|
21
|
-
` \`\`\`markdown`,
|
|
22
|
-
` ## 🚦 Harness OS Routing Checkpoint`,
|
|
23
|
-
` - **Active Tier**: Tier 1 | Tier 2 | Tier 3 | unclassified`,
|
|
24
|
-
` - **Strategy**: <selected/deferred strategy>`,
|
|
25
|
-
` - **Workflow State**: <active | deferred | blocked | escaped>`,
|
|
26
|
-
` - **Required Invariants**: <router invariants>`,
|
|
27
|
-
` - **Suggested Skills**: <deduplicated suggestions or none>`,
|
|
28
|
-
` - **Applicability**: <use | not-applicable + reason | unresolved/unavailable>`,
|
|
29
|
-
` - **Escape**: <none | reason + uncovered scope + evidence>`,
|
|
30
|
-
` \`\`\``,
|
|
12
|
+
`## 🚦 ENTRY TRIAGE & WORKFLOW GUIDANCE`,
|
|
13
|
+
`For software/project work, load the \`harness-everything\` skill and establish routing context before broad mutation:`,
|
|
14
|
+
`1. Run \`npx github:dyphn1/Harness-everything next "<Brief summary of user's prompt>"\` when terminal execution is available.`,
|
|
15
|
+
`2. For EVERY suggested skill, read its complete \`SKILL.md\` entry and evaluate applicability from \`USE FOR\`, \`DO NOT USE FOR\`, and its basic flow.`,
|
|
16
|
+
`3. Treat the selected workflow topology and numeric limits as planning guidance, not a lock. Choose, combine, reorder, or skip steps when evidence supports it.`,
|
|
17
|
+
`4. Prefer objective verification before declaring done and worktree isolation for broad/Tier-3 mutation.`,
|
|
18
|
+
`5. Surface a compact routing checkpoint with tier, strategy, suggested skills, and any relevant warnings.`,
|
|
31
19
|
``,
|
|
32
20
|
`## 🤖 COGNITIVE COMPLIANCE`,
|
|
33
|
-
`- **No universal skill pipeline**: do not force every task through TODO/TDD/Fable
|
|
34
|
-
`- **
|
|
35
|
-
`- **
|
|
36
|
-
`- **
|
|
21
|
+
`- **No universal skill pipeline**: do not force every task through TODO/TDD/Fable.`,
|
|
22
|
+
`- **Rule of 3**: after 3 same-signature failures, stop micro-retrying and use a fresh diagnosis / zoom-out. This reflection boundary may block mutation until completed.`,
|
|
23
|
+
`- **Permission boundaries are separate**: explicit host/user approval for destructive or external actions remains authoritative.`,
|
|
24
|
+
`- **Verification is evidence, not a cage**: missing evidence should trigger a reminder, not a persistent workflow lock.`,
|
|
37
25
|
`- **Environment discovery**: discover OS, shell, package manager/runtime, and host capability before relying on them.`,
|
|
38
|
-
`- **Memory / self-evolve**: persist only verified reusable lessons
|
|
26
|
+
`- **Memory / self-evolve**: persist only verified reusable lessons.`,
|
|
39
27
|
`- **Prefer editing**: prefer targeted edits and logically complete commits over broad rewrites.`,
|
|
40
28
|
``
|
|
41
29
|
].join('\n');
|
|
@@ -149,10 +137,9 @@ function buildCodexGlobalContent() {
|
|
|
149
137
|
`- Discover the environment and host capabilities before relying on them.`,
|
|
150
138
|
`- For software/project work, run \`npx github:dyphn1/Harness-everything next "<summary>"\` before mutation and surface the routing checkpoint.`,
|
|
151
139
|
`- Read every suggested skill's complete \`SKILL.md\` entry before resolving applicability; do not omit it from metadata or confidence alone.`,
|
|
152
|
-
`-
|
|
153
|
-
`- Do not impose a universal TODO/TDD/Fable sequence; use the smallest
|
|
154
|
-
`-
|
|
155
|
-
`- Before declaring done, run \`npx github:dyphn1/Harness-everything verify\` and fix failures.`,
|
|
140
|
+
`- Use the selected workflow topology as planning guidance; the model may adapt or skip steps with an explicit evidence-based reason.`,
|
|
141
|
+
`- Do not impose a universal TODO/TDD/Fable sequence; use the smallest useful topology plus applicable skills.`,
|
|
142
|
+
`- Prefer objective verification before declaring done; missing verification is a reminder, not a persistent lock.`,
|
|
156
143
|
`- After 3 same-signature failures, stop retrying and use a fresh diagnosis / zoom-out.`,
|
|
157
144
|
`- Prefer targeted edits and logically complete commits.`,
|
|
158
145
|
``
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: using-git-worktrees
|
|
3
|
-
description: Use when starting feature work needing isolation or before implementation plans -
|
|
3
|
+
description: Use when starting feature work needing isolation or before implementation plans - recommends an isolated workspace via native tools or git worktree fallback
|
|
4
4
|
license: Apache-2.0
|
|
5
5
|
metadata:
|
|
6
6
|
author: Miya Daniel
|
|
7
|
-
version: 0.
|
|
7
|
+
version: 0.16.1
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Using Git Worktrees
|
|
@@ -13,7 +13,7 @@ Use native worktree support first; raw Git is the fallback.
|
|
|
13
13
|
|
|
14
14
|
## Contract
|
|
15
15
|
|
|
16
|
-
- **Major workflow
|
|
16
|
+
- **Major workflow guidance** — Tier 3 / Fable-class engineering is safer in a linked worktree before broad source/artifact mutation. Reuse one or create one when practical.
|
|
17
17
|
- **Ordinary mode** — isolation-needing feature work may honor an explicit user preference to stay in place.
|
|
18
18
|
- Never nest a worktree inside an already isolated worktree.
|
|
19
19
|
|
|
@@ -28,11 +28,11 @@ git rev-parse --show-superproject-working-tree
|
|
|
28
28
|
```
|
|
29
29
|
Different git/common dirs and no superproject => already isolated; continue to Step 2. A submodule is a normal repo for this check.
|
|
30
30
|
|
|
31
|
-
**Step 1 — Create/enter**: prefer native `EnterWorktree`, `/worktree`, or `--worktree`. Otherwise use `git worktree add "$path" -b "$BRANCH_NAME"`.
|
|
31
|
+
**Step 1 — Create/enter**: prefer native `EnterWorktree`, `/worktree`, or `--worktree`. Otherwise use `git worktree add "$path" -b "$BRANCH_NAME"`. Prefer an already-ignored or external/sibling path. If creation/entry fails, report it and continue only with explicit awareness of the isolation risk.
|
|
32
32
|
|
|
33
33
|
**Step 2 — Setup**: install project dependencies as needed.
|
|
34
34
|
|
|
35
|
-
**Step 3 — Baseline**: run
|
|
35
|
+
**Step 3 — Baseline**: run relevant tests/build before implementation when useful; surface existing failures before relying on the baseline.
|
|
36
36
|
|
|
37
37
|
Deep dive: <this-skill-dir>/references/workflow-details.md
|
|
38
38
|
|
package/zoom-out/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: "Reflect-first circuit breaker - after 3 failures, stop edits, rebu
|
|
|
4
4
|
license: Apache-2.0
|
|
5
5
|
metadata:
|
|
6
6
|
author: Miya Daniel
|
|
7
|
-
version: 0.
|
|
7
|
+
version: 0.16.2
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Zoom Out (Circuit Breaker)
|
|
@@ -18,7 +18,7 @@ Stop repeated failures, rebuild the facts, and choose a safe next step.
|
|
|
18
18
|
| **Trigger / Input** | Three same-signature failures or an explicit loop/rethink request. |
|
|
19
19
|
| **Expected Output** | Fact-checked report ending in `RESUME` or `ESCALATE`. |
|
|
20
20
|
| **State Mutations** | Writes the session `zoom-out-report.md`; reset may clear breaker state. |
|
|
21
|
-
| **Enforcement Gate** | `<skills-repo-root>/hooks/scripts/rule-of-3.js` plus a valid report;
|
|
21
|
+
| **Enforcement Gate** | `<skills-repo-root>/hooks/scripts/rule-of-3.js` plus a valid report; a later three-failure cycle requests another reflection. |
|
|
22
22
|
|
|
23
23
|
## Circuit Breaker Flow
|
|
24
24
|
|
|
@@ -26,7 +26,7 @@ Stop repeated failures, rebuild the facts, and choose a safe next step.
|
|
|
26
26
|
2. Use read-only tools to restate the goal and check files, configuration, and logs.
|
|
27
27
|
3. Fill `<this-skill-dir>/templates/zoom-out-report.template.md` and end with `RESUME` or `ESCALATE`.
|
|
28
28
|
4. Resume only on an untried path; escalate genuine user decisions with options.
|
|
29
|
-
5.
|
|
29
|
+
5. If three more matching failures occur, run another zoom-out cycle. `npm run harness:reset` is only an optional manual state clear; record the insight with `self-evolve`.
|
|
30
30
|
|
|
31
31
|
## USE FOR:
|
|
32
32
|
- "you are stuck in a loop"
|
|
@@ -21,7 +21,7 @@ flowchart TD
|
|
|
21
21
|
|
|
22
22
|
Resume --> Resolved{5. Problem Cracking Succeeds?}
|
|
23
23
|
Resolved -- Yes --> SelfEvolve[Call self-evolve to Persist Insight]
|
|
24
|
-
Resolved -- No (3 More Failures) -->
|
|
24
|
+
Resolved -- No (3 More Matching Failures) --> CeaseFire
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
## 1. Triggers
|
|
@@ -50,7 +50,7 @@ A complete report automatically releases the circuit breaker on hook-enabled sys
|
|
|
50
50
|
## 5. Phase 4 — Decision Gate: Resume or Escalate
|
|
51
51
|
|
|
52
52
|
- **RESUME**: Selected when the fresh diagnosis identifies a clear, untried path within existing authority.
|
|
53
|
-
- **ESCALATE**: Reserved for true decision points belonging to the user (conflicting requirements, destructive migration, missing credentials/access, or repeated breaker trips).
|
|
53
|
+
- **ESCALATE**: Reserved for true decision points belonging to the user (conflicting requirements, destructive migration, missing credentials/access, or repeated breaker trips that expose a genuine decision or access gap).
|
|
54
54
|
Hand the human a **decision**, not a plea:
|
|
55
55
|
|
|
56
56
|
> "Goal: [...]. I falsified paths X, Y, Z — verified facts: [...].
|
|
@@ -61,6 +61,6 @@ Hand the human a **decision**, not a plea:
|
|
|
61
61
|
Banned: "I have tried everything and failed, please help." That reports incapability, not a decision.
|
|
62
62
|
|
|
63
63
|
## 7. Recovery
|
|
64
|
-
- **Self-recovery path**: a valid report ending in `RESUME` releases the breaker — reload the appropriate execution mode (`tdd`, `fable-mode`) and execute the new diagnosis. If the SAME failure signature accumulates 3 more failures,
|
|
65
|
-
- **Human path**: after the human answers an `ESCALATE`,
|
|
64
|
+
- **Self-recovery path**: a valid report ending in `RESUME` releases the breaker — reload the appropriate execution mode (`tdd`, `fable-mode`) and execute the new diagnosis. If the SAME failure signature accumulates 3 more failures, start another zoom-out/reflection cycle.
|
|
65
|
+
- **Human path**: after the human answers an `ESCALATE`, continue under their direction. `npm run harness:reset` (or a new session / `/clear`) is an optional manual state clear for recovery or maintenance; it is not required merely because the breaker re-tripped.
|
|
66
66
|
- Either way, once the problem is ultimately cracked, feed the insight to `self-evolve`.
|