wicked-crew 0.9.4 → 0.9.6
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/dist/api/delivery-assurance.d.ts.map +1 -1
- package/dist/api/delivery-assurance.js +14 -3
- package/dist/api/delivery-assurance.js.map +1 -1
- package/dist/api/discovery-source.d.ts +4 -4
- package/dist/api/discovery-source.d.ts.map +1 -1
- package/dist/api/discovery-source.js +14 -8
- package/dist/api/discovery-source.js.map +1 -1
- package/dist/api/eval-sample.d.ts +12 -12
- package/dist/api/governance-steering.d.ts +2 -2
- package/dist/api/governance-steering.js +2 -2
- package/dist/api/governance-steering.js.map +1 -1
- package/dist/api/mcp.d.ts +4 -4
- package/dist/api/onboarding-capture.d.ts +1 -1
- package/dist/api/onboarding-capture.d.ts.map +1 -1
- package/dist/api/onboarding-capture.js +1 -1
- package/dist/api/onboarding-capture.js.map +1 -1
- package/dist/api/routes.d.ts +133 -131
- package/dist/api/routes.d.ts.map +1 -1
- package/dist/api/routes.js +37 -34
- package/dist/api/routes.js.map +1 -1
- package/dist/api/server.d.ts +6 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +36 -1
- package/dist/api/server.js.map +1 -1
- package/dist/api/testing.js +1 -1
- package/dist/api/testing.js.map +1 -1
- package/dist/campaigns/plan.d.ts +8 -1
- package/dist/campaigns/plan.d.ts.map +1 -1
- package/dist/campaigns/plan.js +15 -3
- package/dist/campaigns/plan.js.map +1 -1
- package/dist/campaigns/routes.d.ts +8 -8
- package/dist/core/adapter.d.ts +29 -89
- package/dist/core/adapter.d.ts.map +1 -1
- package/dist/core/adapter.js +86 -609
- package/dist/core/adapter.js.map +1 -1
- package/dist/core/builtin-catalog.d.ts +24 -0
- package/dist/core/builtin-catalog.d.ts.map +1 -0
- package/dist/core/builtin-catalog.js +54 -0
- package/dist/core/builtin-catalog.js.map +1 -0
- package/dist/core/council-settings.d.ts +18 -0
- package/dist/core/council-settings.d.ts.map +1 -0
- package/dist/core/council-settings.js +37 -0
- package/dist/core/council-settings.js.map +1 -0
- package/dist/core/deliver-text.d.ts +1 -1
- package/dist/core/deliver-text.d.ts.map +1 -1
- package/dist/core/deliver-text.js +3 -2
- package/dist/core/deliver-text.js.map +1 -1
- package/dist/core/deliver.d.ts +0 -6
- package/dist/core/deliver.d.ts.map +1 -1
- package/dist/core/deliver.js +0 -6
- package/dist/core/deliver.js.map +1 -1
- package/dist/core/run-identity.d.ts +1 -1
- package/dist/core/run-identity.d.ts.map +1 -1
- package/dist/core/run-identity.js +7 -3
- package/dist/core/run-identity.js.map +1 -1
- package/dist/editors/csp.js +2 -2
- package/dist/editors/csp.js.map +1 -1
- package/dist/editors/pack-install.d.ts +35 -14
- package/dist/editors/pack-install.d.ts.map +1 -1
- package/dist/editors/pack-install.js +171 -24
- package/dist/editors/pack-install.js.map +1 -1
- package/dist/editors/registry.d.ts +151 -13
- package/dist/editors/registry.d.ts.map +1 -1
- package/dist/editors/registry.js +257 -20
- package/dist/editors/registry.js.map +1 -1
- package/dist/editors/routes.d.ts +10 -5
- package/dist/editors/routes.d.ts.map +1 -1
- package/dist/editors/routes.js +30 -20
- package/dist/editors/routes.js.map +1 -1
- package/dist/learn/routes.d.ts +42 -0
- package/dist/learn/routes.d.ts.map +1 -0
- package/dist/learn/routes.js +87 -0
- package/dist/learn/routes.js.map +1 -0
- package/dist/learn/schedule-store.d.ts +41 -0
- package/dist/learn/schedule-store.d.ts.map +1 -0
- package/dist/learn/schedule-store.js +137 -0
- package/dist/learn/schedule-store.js.map +1 -0
- package/dist/learn/scheduler.d.ts +71 -0
- package/dist/learn/scheduler.d.ts.map +1 -0
- package/dist/learn/scheduler.js +222 -0
- package/dist/learn/scheduler.js.map +1 -0
- package/dist/learn/topics.d.ts +14 -0
- package/dist/learn/topics.d.ts.map +1 -0
- package/dist/learn/topics.js +95 -0
- package/dist/learn/topics.js.map +1 -0
- package/dist/projects/graph.d.ts +14 -0
- package/dist/projects/graph.d.ts.map +1 -1
- package/dist/projects/graph.js +41 -2
- package/dist/projects/graph.js.map +1 -1
- package/dist/projects/routes.d.ts +2 -2
- package/dist/projects/state-home-registry.d.ts.map +1 -1
- package/dist/projects/state-home-registry.js +2 -0
- package/dist/projects/state-home-registry.js.map +1 -1
- package/dist/qe/acceptance.d.ts +5 -0
- package/dist/qe/acceptance.d.ts.map +1 -1
- package/dist/qe/acceptance.js +4 -2
- package/dist/qe/acceptance.js.map +1 -1
- package/dist/qe/author-workflow.d.ts +6 -83
- package/dist/qe/author-workflow.d.ts.map +1 -1
- package/dist/qe/author-workflow.js +6 -300
- package/dist/qe/author-workflow.js.map +1 -1
- package/dist/qe/ledger.d.ts +20 -0
- package/dist/qe/ledger.d.ts.map +1 -1
- package/dist/qe/ledger.js +28 -2
- package/dist/qe/ledger.js.map +1 -1
- package/dist/skills/core-closure.d.ts +3 -5
- package/dist/skills/core-closure.d.ts.map +1 -1
- package/dist/skills/core-closure.js +3 -5
- package/dist/skills/core-closure.js.map +1 -1
- package/dist/standing-orders/routes.d.ts +4 -4
- package/dist/standing-orders/store.d.ts +2 -2
- package/dist/studio/assets/index-C0ZMi_8d.js +583 -0
- package/dist/studio/assets/index-DYLo25MW.css +32 -0
- package/dist/studio/editors/wicked-page/editor.json +1 -1
- package/dist/studio/editors/wicked-page/index.html +1 -1
- package/dist/studio/index.html +2 -2
- package/dist/studio/testid-inventory.json +566 -36
- package/endpoint-manifest.json +59 -2
- package/package.json +4 -4
- package/dist/studio/assets/index-BGfFmWw4.css +0 -32
- package/dist/studio/assets/index-BMRUMU4X.js +0 -567
package/dist/qe/acceptance.d.ts
CHANGED
|
@@ -242,6 +242,11 @@ export declare function runWindowFromEvents(events: RecordedEvent[] | null, runI
|
|
|
242
242
|
export declare function buildAcceptanceView(opts: {
|
|
243
243
|
runId: string;
|
|
244
244
|
repo: RepoEntry | null;
|
|
245
|
+
/**
|
|
246
|
+
* The run's evidence root (`session.evidence_root`), when it has one: its QE ledger is then
|
|
247
|
+
* `<evidence root>/.wicked-qe` and nothing else ({@link runQeLedgerRoot}, crew#951).
|
|
248
|
+
*/
|
|
249
|
+
evidenceRoot?: string | null;
|
|
245
250
|
/** What the run must prove ({@link acceptanceRequirementOf}). */
|
|
246
251
|
requirement: AcceptanceRequirement;
|
|
247
252
|
qeRunId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptance.d.ts","sourceRoot":"","sources":["../../src/qe/acceptance.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"acceptance.d.ts","sourceRoot":"","sources":["../../src/qe/acceptance.ts"],"names":[],"mappings":"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"}
|
package/dist/qe/acceptance.js
CHANGED
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
import { VERDICT_VALUES } from 'wicked-ledger/manifest';
|
|
47
47
|
import { runIdentityOf, runWorkflowDef } from '../core/run-identity.js';
|
|
48
48
|
import { basename } from 'node:path';
|
|
49
|
-
import { describeAttribution,
|
|
49
|
+
import { describeAttribution, readLedgerAcceptanceState, runQeLedgerRoot, summarizeManifest } from './ledger.js';
|
|
50
50
|
import { resolveConformance } from './conformance.js';
|
|
51
51
|
/**
|
|
52
52
|
* Verdict → run-status, 1:1 with garden's qe `accept` action (VERDICT_TO_STATUS)
|
|
@@ -429,7 +429,9 @@ export async function buildAcceptanceView(opts) {
|
|
|
429
429
|
const subject = opts.qeRunId !== undefined
|
|
430
430
|
? { qeRunId: opts.qeRunId }
|
|
431
431
|
: { run: runWindowFromEvents(eventRows, opts.runId, eventsError) };
|
|
432
|
-
|
|
432
|
+
// The run's ONE ledger (crew#951): its evidence root's when it has one, else its repo's.
|
|
433
|
+
const ledgerRoot = runQeLedgerRoot({ evidence_root: opts.evidenceRoot ?? null }, opts.repo?.root_path ?? null);
|
|
434
|
+
const state = ledgerRoot !== null ? await readLedgerAcceptanceState(ledgerRoot, subject) : null;
|
|
433
435
|
// Deny-dominates across the repo ledger too: on a run whose requirement is walkthroughs only, a
|
|
434
436
|
// verdict the repo ledger DOES attribute to this run still counts — a FAIL there denies.
|
|
435
437
|
// An unreadable repo ledger counts too: it cannot say whether it attributes a denial (Copilot on #759).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptance.js","sourceRoot":"","sources":["../../src/qe/acceptance.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acceptance.js","sourceRoot":"","sources":["../../src/qe/acceptance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `qe-author-tests` — the governed test-authoring workflow (wave 6: F-7R2-003/004/005/012/014/015,
|
|
3
|
-
* acceptance verdict R4-r2)
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* replies ("Gate protocol acknowledged … What is the next task?"), every gate a vacuous
|
|
10
|
-
* default-allow, no `skill_ref` anywhere (the 40-specialist QE domain never routed), no deliver
|
|
11
|
-
* phase (the LAST worker opened the PR from its own shell — invisible to the ledger), no campaign
|
|
12
|
-
* registered (the Test landing stayed empty), and the produced Playwright e2e was never executed by
|
|
13
|
-
* the run — it failed at its first check on the first independent run (R4-r2: 0 of 12 checks).
|
|
14
|
-
*
|
|
15
|
-
* This def is the fix, as data the engine validates AS AUTHORED (wicked-core#414 — a code-writing
|
|
16
|
-
* agent phase carries the evidence-floor pin, the verified-evidence phase carries it too):
|
|
17
|
-
*
|
|
18
|
-
* recon (agent, neutral, `wicked-garden-qe` plan) — read the repo + its tests, detect the
|
|
19
|
-
* harness, map intent → behaviours → gaps
|
|
20
|
-
* author (agent, CREATOR, `wicked-garden-qe` author, — write behaviour tests against the repo's
|
|
21
|
-
* executes_code, evidence-floor pinned) own harness + `tests/PLAN-<slug>.md`
|
|
22
|
-
* verify (TOOL, verified_evidence, pinned) — {@link qeVerifyScript}: run the repo's own
|
|
23
|
-
* checks INCLUDING every produced test;
|
|
24
|
-
* FAIL if any fails or was never executed
|
|
25
|
-
* review (agent, EVALUATOR, `wicked-garden-qe` review,— independent fitness verdict; escalates a
|
|
26
|
-
* pinned, human_confirm_if verdict_not_pass) not-pass to a human, never auto-denies
|
|
27
|
-
* deliver — NOT here. Appended per run by the ENGINE-side composition (`deliver: "pr"`, the
|
|
28
|
-
* crew#393 default for a repo-scoped code-work def): the engine lifts, re-verifies,
|
|
29
|
-
* pushes and opens the PR so the ledger records the delivery. A worker seat never
|
|
30
|
-
* pushes (the wave-6 engine's remote-write fence refuses `git push`/`gh pr create`).
|
|
31
|
-
*
|
|
32
|
-
* The METHOD lives in the garden skill (`wicked-garden-qe`, actions plan/author/review) — each
|
|
33
|
-
* phase's inline `instructions` is a one-line orientation only, because a governed worker's prompt
|
|
34
|
-
* rides a single PTY line capped at 1022 bytes (wicked-core execute_wrapped.rs) and the planner
|
|
35
|
-
* folds the instructions onto that line beside the run intent.
|
|
36
|
-
*
|
|
37
|
-
* Crew-authored drop-in (like `capture-learnings`): NOT core-seeded, so `launchRun`'s
|
|
38
|
-
* `_writeBuiltinOverlay` write is the only way the engine resolves the id. Not `is_system`: it IS an
|
|
39
|
-
* operator-selectable work mode (the catalog finally carries something labelled test/QE — F-075).
|
|
3
|
+
* acceptance verdict R4-r2). It is wicked-core's built-in preset (X-MIG M10; its steps, the verify
|
|
4
|
+
* Tool script included, live in core's `src/presets/qe-author-tests.json`): recon → author (the
|
|
5
|
+
* creator, evidence-floor pinned) → verify (the Tool step that runs the repo's own checks INCLUDING
|
|
6
|
+
* every produced test) → review (the evaluator, `human_confirm_if verdict_not_pass`). Crew serves
|
|
7
|
+
* it from the engine (`core/builtin-catalog.ts`, X-MIG M11) and keeps here only what it READS back:
|
|
8
|
+
* the verify report's markers and parser, and the plan summary the testing route answers with.
|
|
40
9
|
*/
|
|
41
10
|
import type { PhaseDef, WorkflowDef } from '../core/types.js';
|
|
42
11
|
/** The workflow id — `GET /workflows` lists it; `POST /testing/author` launches it. */
|
|
@@ -53,52 +22,6 @@ export declare const QE_VERIFY_CHECK_MARKER = "QE-VERIFY-CHECK:";
|
|
|
53
22
|
export declare const QE_VERIFY_SUMMARY_MARKER = "QE-VERIFY-SUMMARY:";
|
|
54
23
|
/** Where the author phase must record its plan (glob, repo-relative). */
|
|
55
24
|
export declare const QE_PLAN_GLOB = "tests/PLAN-*.md";
|
|
56
|
-
/** Ceiling for each phase's inline orientation — the PTY line also carries the intent. */
|
|
57
|
-
export declare const QE_MAX_INLINE_INSTRUCTION_BYTES = 600;
|
|
58
|
-
/**
|
|
59
|
-
* The verify phase's script — the R4-r2 floor: a produced test that fails, or was never run, FAILS
|
|
60
|
-
* the unit. Runs in the run worktree as `bash -lc`:
|
|
61
|
-
*
|
|
62
|
-
* 1. BASE — the run branch's fork point off origin's default branch (the engine's own derivation
|
|
63
|
-
* order: origin/HEAD, origin/main, origin/master; then a local main/master; else HEAD).
|
|
64
|
-
* 2. PRODUCED — every path changed/added since BASE plus every untracked file: the run's own work,
|
|
65
|
-
* committed or not. Test files are the conventional shapes (`*.test.*`, `*.spec.*`, `*_test.py`,
|
|
66
|
-
* `test_*.py`, `__tests__/`); fixtures, factories and the PLAN are produced but not "tests".
|
|
67
|
-
* 3. HARNESS per file — the REPOSITORY's own, resolved PER FILE by walking up from the file's
|
|
68
|
-
* directory to the nearest marker (monorepo-aware — review H-1/M-1 of #536): Playwright
|
|
69
|
-
* (`playwright.config.*` / `@playwright/test` in the nearest package.json) for `*.spec.*`, a
|
|
70
|
-
* Python Playwright rig (imports `playwright`), vitest/jest from the nearest package.json that
|
|
71
|
-
* declares them, pytest for every other test-shaped `.py` (nearest `pytest.ini` / `conftest.py`
|
|
72
|
-
* / `tox.ini` / `pyproject.toml [tool.pytest]` / `setup.cfg [tool:pytest]` dir, else the root).
|
|
73
|
-
* The RUNNER is the nearest `node_modules/.bin/<tool>` (or `.venv/bin/pytest` / an importable
|
|
74
|
-
* pytest) from that package dir up to the worktree root — NEVER `npx` (a registry fetch on the
|
|
75
|
-
* verify path) and NEVER a plain interpreter for a test-shaped file (a pytest module run as
|
|
76
|
-
* `python3 file.py` defines its functions and exits 0 with zero assertions — a vacuous PASS).
|
|
77
|
-
* A missing/unrunnable runner is NOT EXECUTED = fail, with "harness not available: <tool>" and
|
|
78
|
-
* the remedy (install the dependencies in the worktree in the author phase). The runner runs
|
|
79
|
-
* FROM its package dir with a package-relative path.
|
|
80
|
-
* 4. COLLECTED — every executed file must show ≥ 1 test in the RUNNER's own summary (pytest
|
|
81
|
-
* `N passed` / `collected N items`, vitest `Tests N passed`, jest `N total`, Playwright
|
|
82
|
-
* `N passed`, a Python rig's check/pass lines); exit 0 with 0 tests reported = NOT EXECUTED.
|
|
83
|
-
* 5. REPO CHECKS — the full unit suite of every (harness, package dir) a produced test used
|
|
84
|
-
* (vitest/jest/pytest) runs once too, so the produced tests are verified INSIDE the repository's
|
|
85
|
-
* own check, not beside it. The Playwright suite is not re-run whole (its produced specs ran
|
|
86
|
-
* individually).
|
|
87
|
-
* 6. VERDICT — `QE-VERIFY-SUMMARY:` then exit 0 only when: ≥ 1 produced test, every one executed
|
|
88
|
-
* with ≥ 1 test collected, none failed, the PLAN exists, and the repo checks passed. Every
|
|
89
|
-
* refusal names its reason.
|
|
90
|
-
*
|
|
91
|
-
* `set -u -o pipefail` but NOT `-e`: each command's exit is captured deliberately. `exec 2>&1`
|
|
92
|
-
* keeps the transcript chronological (the engine appends stderr after stdout otherwise).
|
|
93
|
-
*/
|
|
94
|
-
export declare function qeVerifyScript(): string;
|
|
95
|
-
/** The verify TOOL phase — deterministic, pinned to the evidence floor (the run left a change),
|
|
96
|
-
* `executes_code: false` like the deliver phase: engine-owned tooling, not governed agent work
|
|
97
|
-
* (a Tool unit is never worktree-guarded, so the harness's caches cannot deny it). */
|
|
98
|
-
export declare function qeVerifyPhase(dependsOn?: string[]): PhaseDef;
|
|
99
|
-
/** The shipped definition (see the module doc). Exported as data — tests assert it, the adapter
|
|
100
|
-
* serves it from `BUILTIN_WORKFLOWS`, and the engine validates it as authored at the overlay write. */
|
|
101
|
-
export declare const QE_AUTHOR_TESTS_WORKFLOW_DEF: WorkflowDef;
|
|
102
25
|
/** One produced test file as the verify phase judged it. */
|
|
103
26
|
export interface QeVerifiedFile {
|
|
104
27
|
path: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"author-workflow.d.ts","sourceRoot":"","sources":["../../src/qe/author-workflow.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"author-workflow.d.ts","sourceRoot":"","sources":["../../src/qe/author-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE9D,uFAAuF;AACvF,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,iGAAiG;AACjG,eAAO,MAAM,QAAQ,qBAAqB,CAAC;AAE3C,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AACzD,4FAA4F;AAC5F,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAE7D,yEAAyE;AACzE,eAAO,MAAM,YAAY,oBAAoB,CAAC;AAI9C,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;yFACqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,gGAAgG;IAChG,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,cAAc,CAAC;IAC7C,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,wFAAwF;IACxF,KAAK,CAAC,EAAE,uBAAuB,GAAG,sBAAsB,GAAG,cAAc,CAAC;CAC3E;AAED,+FAA+F;AAC/F,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAeD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAkDvE;AAID,4FAA4F;AAC5F,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,sEAAsE;IACtE,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,mBAAmB,CAAC;IAC7C,YAAY,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;qGACqG;AACrG,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAQD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE,OAAO,GACf,YAAY,CAuBd"}
|
|
@@ -1,44 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `qe-author-tests` — the governed test-authoring workflow (wave 6: F-7R2-003/004/005/012/014/015,
|
|
3
|
-
* acceptance verdict R4-r2)
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* replies ("Gate protocol acknowledged … What is the next task?"), every gate a vacuous
|
|
10
|
-
* default-allow, no `skill_ref` anywhere (the 40-specialist QE domain never routed), no deliver
|
|
11
|
-
* phase (the LAST worker opened the PR from its own shell — invisible to the ledger), no campaign
|
|
12
|
-
* registered (the Test landing stayed empty), and the produced Playwright e2e was never executed by
|
|
13
|
-
* the run — it failed at its first check on the first independent run (R4-r2: 0 of 12 checks).
|
|
14
|
-
*
|
|
15
|
-
* This def is the fix, as data the engine validates AS AUTHORED (wicked-core#414 — a code-writing
|
|
16
|
-
* agent phase carries the evidence-floor pin, the verified-evidence phase carries it too):
|
|
17
|
-
*
|
|
18
|
-
* recon (agent, neutral, `wicked-garden-qe` plan) — read the repo + its tests, detect the
|
|
19
|
-
* harness, map intent → behaviours → gaps
|
|
20
|
-
* author (agent, CREATOR, `wicked-garden-qe` author, — write behaviour tests against the repo's
|
|
21
|
-
* executes_code, evidence-floor pinned) own harness + `tests/PLAN-<slug>.md`
|
|
22
|
-
* verify (TOOL, verified_evidence, pinned) — {@link qeVerifyScript}: run the repo's own
|
|
23
|
-
* checks INCLUDING every produced test;
|
|
24
|
-
* FAIL if any fails or was never executed
|
|
25
|
-
* review (agent, EVALUATOR, `wicked-garden-qe` review,— independent fitness verdict; escalates a
|
|
26
|
-
* pinned, human_confirm_if verdict_not_pass) not-pass to a human, never auto-denies
|
|
27
|
-
* deliver — NOT here. Appended per run by the ENGINE-side composition (`deliver: "pr"`, the
|
|
28
|
-
* crew#393 default for a repo-scoped code-work def): the engine lifts, re-verifies,
|
|
29
|
-
* pushes and opens the PR so the ledger records the delivery. A worker seat never
|
|
30
|
-
* pushes (the wave-6 engine's remote-write fence refuses `git push`/`gh pr create`).
|
|
31
|
-
*
|
|
32
|
-
* The METHOD lives in the garden skill (`wicked-garden-qe`, actions plan/author/review) — each
|
|
33
|
-
* phase's inline `instructions` is a one-line orientation only, because a governed worker's prompt
|
|
34
|
-
* rides a single PTY line capped at 1022 bytes (wicked-core execute_wrapped.rs) and the planner
|
|
35
|
-
* folds the instructions onto that line beside the run intent.
|
|
36
|
-
*
|
|
37
|
-
* Crew-authored drop-in (like `capture-learnings`): NOT core-seeded, so `launchRun`'s
|
|
38
|
-
* `_writeBuiltinOverlay` write is the only way the engine resolves the id. Not `is_system`: it IS an
|
|
39
|
-
* operator-selectable work mode (the catalog finally carries something labelled test/QE — F-075).
|
|
3
|
+
* acceptance verdict R4-r2). It is wicked-core's built-in preset (X-MIG M10; its steps, the verify
|
|
4
|
+
* Tool script included, live in core's `src/presets/qe-author-tests.json`): recon → author (the
|
|
5
|
+
* creator, evidence-floor pinned) → verify (the Tool step that runs the repo's own checks INCLUDING
|
|
6
|
+
* every produced test) → review (the evaluator, `human_confirm_if verdict_not_pass`). Crew serves
|
|
7
|
+
* it from the engine (`core/builtin-catalog.ts`, X-MIG M11) and keeps here only what it READS back:
|
|
8
|
+
* the verify report's markers and parser, and the plan summary the testing route answers with.
|
|
40
9
|
*/
|
|
41
|
-
import { EVIDENCE_FLOOR_PIN } from '../core/deliver.js';
|
|
42
10
|
/** The workflow id — `GET /workflows` lists it; `POST /testing/author` launches it. */
|
|
43
11
|
export const QE_AUTHOR_TESTS_WORKFLOW = 'qe-author-tests';
|
|
44
12
|
/** The garden skill every agent phase routes through (`skills/qe/SKILL.md`, actions by name). */
|
|
@@ -53,268 +21,6 @@ export const QE_VERIFY_CHECK_MARKER = 'QE-VERIFY-CHECK:';
|
|
|
53
21
|
export const QE_VERIFY_SUMMARY_MARKER = 'QE-VERIFY-SUMMARY:';
|
|
54
22
|
/** Where the author phase must record its plan (glob, repo-relative). */
|
|
55
23
|
export const QE_PLAN_GLOB = 'tests/PLAN-*.md';
|
|
56
|
-
/** Ceiling for each phase's inline orientation — the PTY line also carries the intent. */
|
|
57
|
-
export const QE_MAX_INLINE_INSTRUCTION_BYTES = 600;
|
|
58
|
-
const RECON_INSTRUCTIONS = 'Phase 1/4 PLAN (qe skill, plan action): read the repository and its existing tests, detect the ' +
|
|
59
|
-
'test harness (vitest/jest/pytest/Playwright/node:test and any loopback e2e fixture), map the operator ' +
|
|
60
|
-
'intent to behaviours, and list the coverage gaps — cite file:line for anything you claim is ' +
|
|
61
|
-
'already covered. Analysis only: write no files.';
|
|
62
|
-
const AUTHOR_INSTRUCTIONS = 'Phase 2/4 AUTHOR (qe skill, author action): write BEHAVIOUR tests for the planned gaps against ' +
|
|
63
|
-
"the repository's own harness, plus tests/PLAN-<slug>.md recording each test, the exact command " +
|
|
64
|
-
'that runs it and its observed result. RUN every test you write before claiming it. Never push, ' +
|
|
65
|
-
"never open or edit a pull request — the run's deliver phase does that.";
|
|
66
|
-
const REVIEW_INSTRUCTIONS = 'Phase 4/4 REVIEW (qe skill, review action): judge the produced tests independently — behaviour ' +
|
|
67
|
-
'vs implementation coupling, every claim of existing coverage verified at file:line, no sleeps ' +
|
|
68
|
-
"or flaky waits, the PLAN matches what shipped, and the verify phase's QE-VERIFY report shows " +
|
|
69
|
-
'every produced test executed. End with one plain-text line VERDICT: PASS or VERDICT: FAIL as ' +
|
|
70
|
-
'the last line, findings above it; never quote another VERDICT line. Read-only: change nothing.';
|
|
71
|
-
/**
|
|
72
|
-
* The verify phase's script — the R4-r2 floor: a produced test that fails, or was never run, FAILS
|
|
73
|
-
* the unit. Runs in the run worktree as `bash -lc`:
|
|
74
|
-
*
|
|
75
|
-
* 1. BASE — the run branch's fork point off origin's default branch (the engine's own derivation
|
|
76
|
-
* order: origin/HEAD, origin/main, origin/master; then a local main/master; else HEAD).
|
|
77
|
-
* 2. PRODUCED — every path changed/added since BASE plus every untracked file: the run's own work,
|
|
78
|
-
* committed or not. Test files are the conventional shapes (`*.test.*`, `*.spec.*`, `*_test.py`,
|
|
79
|
-
* `test_*.py`, `__tests__/`); fixtures, factories and the PLAN are produced but not "tests".
|
|
80
|
-
* 3. HARNESS per file — the REPOSITORY's own, resolved PER FILE by walking up from the file's
|
|
81
|
-
* directory to the nearest marker (monorepo-aware — review H-1/M-1 of #536): Playwright
|
|
82
|
-
* (`playwright.config.*` / `@playwright/test` in the nearest package.json) for `*.spec.*`, a
|
|
83
|
-
* Python Playwright rig (imports `playwright`), vitest/jest from the nearest package.json that
|
|
84
|
-
* declares them, pytest for every other test-shaped `.py` (nearest `pytest.ini` / `conftest.py`
|
|
85
|
-
* / `tox.ini` / `pyproject.toml [tool.pytest]` / `setup.cfg [tool:pytest]` dir, else the root).
|
|
86
|
-
* The RUNNER is the nearest `node_modules/.bin/<tool>` (or `.venv/bin/pytest` / an importable
|
|
87
|
-
* pytest) from that package dir up to the worktree root — NEVER `npx` (a registry fetch on the
|
|
88
|
-
* verify path) and NEVER a plain interpreter for a test-shaped file (a pytest module run as
|
|
89
|
-
* `python3 file.py` defines its functions and exits 0 with zero assertions — a vacuous PASS).
|
|
90
|
-
* A missing/unrunnable runner is NOT EXECUTED = fail, with "harness not available: <tool>" and
|
|
91
|
-
* the remedy (install the dependencies in the worktree in the author phase). The runner runs
|
|
92
|
-
* FROM its package dir with a package-relative path.
|
|
93
|
-
* 4. COLLECTED — every executed file must show ≥ 1 test in the RUNNER's own summary (pytest
|
|
94
|
-
* `N passed` / `collected N items`, vitest `Tests N passed`, jest `N total`, Playwright
|
|
95
|
-
* `N passed`, a Python rig's check/pass lines); exit 0 with 0 tests reported = NOT EXECUTED.
|
|
96
|
-
* 5. REPO CHECKS — the full unit suite of every (harness, package dir) a produced test used
|
|
97
|
-
* (vitest/jest/pytest) runs once too, so the produced tests are verified INSIDE the repository's
|
|
98
|
-
* own check, not beside it. The Playwright suite is not re-run whole (its produced specs ran
|
|
99
|
-
* individually).
|
|
100
|
-
* 6. VERDICT — `QE-VERIFY-SUMMARY:` then exit 0 only when: ≥ 1 produced test, every one executed
|
|
101
|
-
* with ≥ 1 test collected, none failed, the PLAN exists, and the repo checks passed. Every
|
|
102
|
-
* refusal names its reason.
|
|
103
|
-
*
|
|
104
|
-
* `set -u -o pipefail` but NOT `-e`: each command's exit is captured deliberately. `exec 2>&1`
|
|
105
|
-
* keeps the transcript chronological (the engine appends stderr after stdout otherwise).
|
|
106
|
-
*/
|
|
107
|
-
export function qeVerifyScript() {
|
|
108
|
-
return [
|
|
109
|
-
'set -uo pipefail',
|
|
110
|
-
'exec 2>&1',
|
|
111
|
-
'echo "QE-VERIFY-BEGIN worktree=$PWD"',
|
|
112
|
-
// 1. base
|
|
113
|
-
'D=$(git symbolic-ref -q --short refs/remotes/origin/HEAD || true)',
|
|
114
|
-
'if [ -z "$D" ] || ! git rev-parse --verify -q "$D^{commit}" >/dev/null; then',
|
|
115
|
-
' if git rev-parse --verify -q origin/main^{commit} >/dev/null; then D=origin/main;',
|
|
116
|
-
' elif git rev-parse --verify -q origin/master^{commit} >/dev/null; then D=origin/master;',
|
|
117
|
-
' elif git rev-parse --verify -q main^{commit} >/dev/null; then D=main;',
|
|
118
|
-
' elif git rev-parse --verify -q master^{commit} >/dev/null; then D=master;',
|
|
119
|
-
' else D=""; fi',
|
|
120
|
-
'fi',
|
|
121
|
-
'if [ -n "$D" ]; then BASE=$(git merge-base "$D" HEAD 2>/dev/null || git rev-parse HEAD); else BASE=$(git rev-parse HEAD); fi',
|
|
122
|
-
'echo "QE-VERIFY-BASE ref=${D:-HEAD} commit=$BASE"',
|
|
123
|
-
// 2. produced
|
|
124
|
-
'PRODUCED=$( { git diff --name-only --diff-filter=AMR "$BASE" -- . ; git ls-files --others --exclude-standard ; } | sort -u )',
|
|
125
|
-
'is_test_path() {',
|
|
126
|
-
' case "$1" in *.md|*.json|*.snap|*.txt|*.yml|*.yaml|*.toml|*.lock|*.html|*.css|*.png|*.svg) return 1;; esac',
|
|
127
|
-
' case "$1" in *.test.*|*.spec.*|*_test.py|test_*.py|*/test_*.py|__tests__/*|*/__tests__/*) return 0;; esac',
|
|
128
|
-
' return 1',
|
|
129
|
-
'}',
|
|
130
|
-
// 3. harness detection — PER FILE, nearest marker dir walking UP from the file (monorepo-aware)
|
|
131
|
-
'pkg_has_dep() { [ -f "$1/package.json" ] && grep -Eq "\\"$2\\"[[:space:]]*:" "$1/package.json"; }',
|
|
132
|
-
'is_pw_dir() { ls "$1"/playwright.config.* >/dev/null 2>&1 || pkg_has_dep "$1" "@playwright/test"; }',
|
|
133
|
-
'is_vitest_dir() { pkg_has_dep "$1" vitest; }',
|
|
134
|
-
'is_jest_dir() { pkg_has_dep "$1" jest; }',
|
|
135
|
-
'is_py_dir() { [ -f "$1/pytest.ini" ] || [ -f "$1/conftest.py" ] || [ -f "$1/tox.ini" ] || { [ -f "$1/pyproject.toml" ] && grep -q "tool.pytest" "$1/pyproject.toml"; } || { [ -f "$1/setup.cfg" ] && grep -q "tool:pytest" "$1/setup.cfg"; }; }',
|
|
136
|
-
// node:test rung: package.json scripts.test declares "node --test"
|
|
137
|
-
'pkg_has_nodetest() { local f="$1/package.json"; [ -f "$f" ] || return 1; grep -q "node --test" "$f"; }',
|
|
138
|
-
// any package.json dir — used for node:test file resolution and npm-test fallback
|
|
139
|
-
'is_pkg_dir() { [ -f "$1/package.json" ]; }',
|
|
140
|
-
// package has a non-placeholder test script (not the npm "no test specified" default)
|
|
141
|
-
'pkg_has_test_script() { local f="$1/package.json"; [ -f "$f" ] || return 1; grep -Eq "\\"test\\"[[:space:]]*:" "$f" || return 1; grep -q "no test specified" "$f" && return 1; return 0; }',
|
|
142
|
-
'nearest() { local d; d=$(dirname "$1"); while :; do if "$2" "$d"; then echo "$d"; return 0; fi; [ "$d" = "." ] && break; d=$(dirname "$d"); done; echo ""; return 1; }',
|
|
143
|
-
// the runner: the nearest node_modules/.bin/<tool> from the package dir up to the worktree root,
|
|
144
|
-
// spelled RELATIVE TO the package dir (every command runs from there: `./…` or `../…`) — NEVER npx
|
|
145
|
-
'find_bin() { local d="$1" up=""; while :; do if [ -x "$d/node_modules/.bin/$2" ]; then echo "${up:-./}node_modules/.bin/$2"; return 0; fi; [ "$d" = "." ] && break; d=$(dirname "$d"); up="../$up"; done; echo ""; return 1; }',
|
|
146
|
-
'find_pytest() { local d="$1" up=""; while :; do if [ -x "$d/.venv/bin/pytest" ]; then echo "${up:-./}.venv/bin/pytest"; return 0; fi; [ "$d" = "." ] && break; d=$(dirname "$d"); up="../$up"; done; if python3 -c "import pytest" >/dev/null 2>&1; then echo "python3 -m pytest"; return 0; fi; echo ""; return 1; }',
|
|
147
|
-
'resolve() {',
|
|
148
|
-
' local d',
|
|
149
|
-
' case "$1" in',
|
|
150
|
-
' *.py)',
|
|
151
|
-
' if grep -Eq "^[[:space:]]*(from|import)[[:space:]]+playwright" "$1" 2>/dev/null; then echo "playwright-python $(dirname "$1")"; return; fi',
|
|
152
|
-
' d=$(nearest "$1" is_py_dir); [ -n "$d" ] || d="."',
|
|
153
|
-
' echo "pytest $d"; return;;',
|
|
154
|
-
' esac',
|
|
155
|
-
' case "$1" in *.spec.*) d=$(nearest "$1" is_pw_dir); if [ -n "$d" ]; then echo "playwright $d"; return; fi;; esac',
|
|
156
|
-
' d=$(nearest "$1" is_vitest_dir); if [ -n "$d" ]; then echo "vitest $d"; return; fi',
|
|
157
|
-
' d=$(nearest "$1" is_jest_dir); if [ -n "$d" ]; then echo "jest $d"; return; fi',
|
|
158
|
-
' d=$(nearest "$1" is_pw_dir); if [ -n "$d" ]; then echo "playwright $d"; return; fi',
|
|
159
|
-
' # node:test rung: file imports node:test OR nearest package has node --test in scripts.test',
|
|
160
|
-
' if grep -q "node:test" "$1" 2>/dev/null; then d=$(nearest "$1" is_pkg_dir); [ -n "$d" ] || d="."; printf "node-test\\t%s\\n" "$d"; return; fi',
|
|
161
|
-
' d=$(nearest "$1" pkg_has_nodetest); if [ -n "$d" ]; then printf "node-test\\t%s\\n" "$d"; return; fi',
|
|
162
|
-
' echo "unknown ."',
|
|
163
|
-
'}',
|
|
164
|
-
// how many tests the RUNNER says it executed (its own summary line) — 0 = nothing ran
|
|
165
|
-
'sum_counts() { grep -E "$2" "$1" | tail -1 | awk \'{s=0; for(i=1;i<=NF;i++) if($i ~ /^[0-9]+$/ && $(i+1) ~ /^(passed|failed|flaky|skipped|total)/) s+=$i; print s}\'; }',
|
|
166
|
-
'collected() {',
|
|
167
|
-
' local n="" fname="${3:-}"',
|
|
168
|
-
' case "$1" in',
|
|
169
|
-
' pytest) n=$(sum_counts "$2" "[0-9]+ (passed|failed)"); [ "${n:-0}" -gt 0 ] || n=$(grep -Eo "collected [0-9]+ item" "$2" | tail -1 | grep -Eo "[0-9]+");;',
|
|
170
|
-
' vitest) n=$(sum_counts "$2" "^[[:space:]]*Tests[[:space:]]");;',
|
|
171
|
-
' jest) n=$(grep -Eo "[0-9]+ total" "$2" | tail -1 | grep -Eo "[0-9]+");;',
|
|
172
|
-
' playwright) n=$(sum_counts "$2" "[0-9]+ (passed|failed|flaky)");;',
|
|
173
|
-
' playwright-python) n=$(grep -Eci "passed|\\bpass\\b|✓|\\"checks\\"|\\bok\\b" "$2");;',
|
|
174
|
-
' node-test) n=$(grep -Eo "pass [0-9]+" "$2" | head -1 | grep -Eo "[0-9]+");;',
|
|
175
|
-
' npm-test) if [ -n "$fname" ] && grep -qF "$fname" "$2" 2>/dev/null; then n=1; else n=0; fi;;',
|
|
176
|
-
' esac',
|
|
177
|
-
' echo "${n:-0}"',
|
|
178
|
-
'}',
|
|
179
|
-
'P=0; E=0; PASS=0; FAIL=0; NX=0; PLAN=""; HARNESSES=""',
|
|
180
|
-
'not_executed() { NX=$((NX+1)); echo "QE-VERIFY: file=$1 harness=$2 pkg=$3 cmd=\\"\\" exit=- tests=0 status=not-executed reason=\\"$4\\""; echo "qe-verify: $1 — $4"; }',
|
|
181
|
-
'while IFS= read -r f; do',
|
|
182
|
-
' [ -n "$f" ] || continue',
|
|
183
|
-
' case "$f" in tests/PLAN-*.md|*/tests/PLAN-*.md) PLAN="$f";; esac',
|
|
184
|
-
' is_test_path "$f" || continue',
|
|
185
|
-
' P=$((P+1))',
|
|
186
|
-
' R=$(resolve "$f"); H="${R%% *}"; PKG="${R#* }"',
|
|
187
|
-
' rel="$f"; [ "$PKG" = "." ] || rel="${f#$PKG/}"',
|
|
188
|
-
' case "$H" in',
|
|
189
|
-
' playwright) BIN=$(find_bin "$PKG" playwright) || { not_executed "$f" "$H" "$PKG" "harness not available: playwright (@playwright/test) — no node_modules/.bin/playwright from $PKG up to the worktree root; install the repository dependencies in the worktree (npm ci) in the author phase. The verify path never runs npx"; continue; }; CMD=("$BIN" test "$rel");;',
|
|
190
|
-
' vitest) BIN=$(find_bin "$PKG" vitest) || { not_executed "$f" "$H" "$PKG" "harness not available: vitest — no node_modules/.bin/vitest from $PKG up to the worktree root; install the repository dependencies in the worktree (npm ci) in the author phase. The verify path never runs npx"; continue; }; CMD=("$BIN" run "$rel");;',
|
|
191
|
-
' jest) BIN=$(find_bin "$PKG" jest) || { not_executed "$f" "$H" "$PKG" "harness not available: jest — no node_modules/.bin/jest from $PKG up to the worktree root; install the repository dependencies in the worktree (npm ci) in the author phase. The verify path never runs npx"; continue; }; CMD=("$BIN" "$rel");;',
|
|
192
|
-
' pytest) PT=$(find_pytest "$PKG") || { not_executed "$f" "$H" "$PKG" "harness not available: pytest — no .venv/bin/pytest from $PKG up to the worktree root and python3 cannot import pytest; a test-shaped .py file is NEVER run as a plain script (it would pass with zero assertions). Install pytest in the worktree in the author phase"; continue; }; if [ "$PT" = "python3 -m pytest" ]; then CMD=(python3 -m pytest -q "$rel"); else CMD=("$PT" -q "$rel"); fi;;',
|
|
193
|
-
' playwright-python) python3 -c "import playwright" >/dev/null 2>&1 || { not_executed "$f" "$H" "$PKG" "harness not available: playwright (python) — python3 cannot import playwright; pip install playwright && playwright install chromium in the author phase"; continue; }; CMD=(python3 "$rel");;',
|
|
194
|
-
' node-test) CMD=(node --test "$rel");;',
|
|
195
|
-
' unknown)',
|
|
196
|
-
' NPM_PKG=$(nearest "$f" is_pkg_dir); NPM_PKG="${NPM_PKG:-.}"',
|
|
197
|
-
' if pkg_has_test_script "$NPM_PKG"; then',
|
|
198
|
-
' H=npm-test; PKG="$NPM_PKG"; rel="$f"; [ "$PKG" = "." ] || rel="${f#$PKG/}"; CMD=(npm test)',
|
|
199
|
-
' else',
|
|
200
|
-
' not_executed "$f" unknown "$NPM_PKG" "no harness recognised — declare one the repository owns (playwright.config.*, vitest/jest/node:test in the nearest package.json, a pytest marker); the repository has no test script to fall back to"; continue',
|
|
201
|
-
' fi;;',
|
|
202
|
-
' *) not_executed "$f" "$H" "$PKG" "unrecognised harness: $H"; continue;;',
|
|
203
|
-
' esac',
|
|
204
|
-
' case " $HARNESSES " in *" $H|$PKG "*) ;; *) HARNESSES="$HARNESSES $H|$PKG";; esac',
|
|
205
|
-
' echo "QE-VERIFY-RUN file=$f harness=$H pkg=$PKG cmd=\\"${CMD[*]}\\""',
|
|
206
|
-
' OUT=$(mktemp "${TMPDIR:-/tmp}/qe-verify.XXXXXX") || { echo "qe-verify: FAIL — cannot create capture file for $f; check that ${TMPDIR:-/tmp} is writable"; exit 1; }',
|
|
207
|
-
' ( cd "$PKG" && "${CMD[@]}" ) >"$OUT" 2>&1; RC=$?',
|
|
208
|
-
' head -c 51200 <"$OUT"',
|
|
209
|
-
' N=$(collected "$H" "$OUT" "$rel"); rm -f "$OUT"',
|
|
210
|
-
' E=$((E+1))',
|
|
211
|
-
' if [ "$RC" -ne 0 ]; then FAIL=$((FAIL+1)); ST=failed;',
|
|
212
|
-
' elif [ "${N:-0}" -lt 1 ]; then NX=$((NX+1)); E=$((E-1)); ST=not-executed; echo "qe-verify: $f — the $H runner exited 0 but reported 0 tests (nothing was collected or executed)";',
|
|
213
|
-
' else PASS=$((PASS+1)); ST=passed; fi',
|
|
214
|
-
' echo "QE-VERIFY: file=$f harness=$H pkg=$PKG cmd=\\"${CMD[*]}\\" exit=$RC tests=${N:-0} status=$ST"',
|
|
215
|
-
"done < <(printf '%s\\n' \"$PRODUCED\")",
|
|
216
|
-
// 4. repo checks — the full unit suite once per (harness, package dir) the produced tests used;
|
|
217
|
-
// when HEAD fails, re-run at BASE to classify: produced-test-failure vs pre-existing-on-base vs unclassified
|
|
218
|
-
'C=0; CF=0',
|
|
219
|
-
'for HP in $HARNESSES; do',
|
|
220
|
-
' H="${HP%%|*}"; PKG="${HP#*|}"',
|
|
221
|
-
' case "$H" in',
|
|
222
|
-
' vitest) BIN=$(find_bin "$PKG" vitest); CMD=("$BIN" run);;',
|
|
223
|
-
' jest) BIN=$(find_bin "$PKG" jest); CMD=("$BIN");;',
|
|
224
|
-
' pytest) PT=$(find_pytest "$PKG"); if [ "$PT" = "python3 -m pytest" ]; then CMD=(python3 -m pytest -q); else CMD=("$PT" -q); fi;;',
|
|
225
|
-
' node-test) CMD=(npm test);;',
|
|
226
|
-
' npm-test|*) echo "QE-VERIFY-CHECK: harness=$H pkg=$PKG skipped=full-suite (produced files ran individually)"; continue;;',
|
|
227
|
-
' esac',
|
|
228
|
-
' C=$((C+1))',
|
|
229
|
-
' echo "QE-VERIFY-CHECK-RUN harness=$H pkg=$PKG cmd=\\"${CMD[*]}\\""',
|
|
230
|
-
' CHECK_OUT=$(mktemp "${TMPDIR:-/tmp}/qe-check.XXXXXX") || CHECK_OUT=""',
|
|
231
|
-
' ( cd "$PKG" && "${CMD[@]}" ) >"${CHECK_OUT:-/dev/null}" 2>&1; RC=$?',
|
|
232
|
-
' [ -n "$CHECK_OUT" ] && head -c 51200 <"$CHECK_OUT"; rm -f "$CHECK_OUT"',
|
|
233
|
-
' CLASS=""',
|
|
234
|
-
' if [ "$RC" -ne 0 ]; then',
|
|
235
|
-
' BASE_WT="${TMPDIR:-/tmp}/qe-base-$$-$RANDOM"',
|
|
236
|
-
' if git worktree add --detach "$BASE_WT" "$BASE" >/dev/null 2>&1; then',
|
|
237
|
-
' [ -d "$BASE_WT/$PKG" ] && [ -d "$PKG/node_modules" ] && { NM_ABS=$(cd "$PKG/node_modules" 2>/dev/null && pwd -P) && ln -sfn "$NM_ABS" "$BASE_WT/$PKG/node_modules"; } 2>/dev/null || true',
|
|
238
|
-
' BASE_CHECK_OUT=$(mktemp "${TMPDIR:-/tmp}/qe-base-check.XXXXXX") 2>/dev/null || BASE_CHECK_OUT=""',
|
|
239
|
-
' echo "QE-VERIFY-CHECK-BASE-RUN harness=$H pkg=$PKG base=$BASE"',
|
|
240
|
-
' ( cd "$BASE_WT/$PKG" 2>/dev/null && "${CMD[@]}" ) >"${BASE_CHECK_OUT:-/dev/null}" 2>&1; BASE_RC=$?',
|
|
241
|
-
' [ -n "$BASE_CHECK_OUT" ] && head -c 51200 <"$BASE_CHECK_OUT"; rm -f "$BASE_CHECK_OUT"',
|
|
242
|
-
' git worktree remove --force "$BASE_WT" >/dev/null 2>&1 || true',
|
|
243
|
-
' if [ "$BASE_RC" -ne 0 ]; then CLASS=pre-existing-on-base',
|
|
244
|
-
' else CLASS=produced-test-failure; CF=$((CF+1)); fi',
|
|
245
|
-
' else CLASS=unclassified; CF=$((CF+1)); fi',
|
|
246
|
-
' fi',
|
|
247
|
-
' echo "QE-VERIFY-CHECK: harness=$H pkg=$PKG cmd=\\"${CMD[*]}\\" exit=$RC${CLASS:+ class=$CLASS}"',
|
|
248
|
-
'done',
|
|
249
|
-
// 5. verdict
|
|
250
|
-
'echo "QE-VERIFY-SUMMARY: produced=$P executed=$E passed=$PASS failed=$FAIL not_executed=$NX plan=${PLAN:-missing} checks=$C checks_failed=$CF"',
|
|
251
|
-
'[ "$P" -gt 0 ] || { echo "qe-verify: FAIL — the author phase produced no test files; nothing was verified, so done cannot be asserted"; exit 1; }',
|
|
252
|
-
'[ -n "$PLAN" ] || { echo "qe-verify: FAIL — no tests/PLAN-*.md was produced (the plan records every test, the command that ran it and its result)"; exit 1; }',
|
|
253
|
-
'[ "$NX" -eq 0 ] || { echo "qe-verify: FAIL — $NX produced test file(s) were never executed (no available harness, or the runner reported 0 tests); a test that never ran proves nothing"; exit 1; }',
|
|
254
|
-
'[ "$FAIL" -eq 0 ] || { echo "qe-verify: FAIL — $FAIL of $E produced test file(s) failed under the repository harness"; exit 1; }',
|
|
255
|
-
'[ "$CF" -eq 0 ] || { echo "qe-verify: FAIL — $CF repository check(s) failed with the produced tests in the tree"; exit 1; }',
|
|
256
|
-
'echo "qe-verify: PASS — $E produced test file(s) executed and passed under the repository harness; plan $PLAN"',
|
|
257
|
-
].join('\n');
|
|
258
|
-
}
|
|
259
|
-
function agentPhase(id, kind, instructions, over) {
|
|
260
|
-
return {
|
|
261
|
-
id,
|
|
262
|
-
kind,
|
|
263
|
-
instructions,
|
|
264
|
-
gate_type: 'execution',
|
|
265
|
-
gate: 'auto',
|
|
266
|
-
executes_code: false,
|
|
267
|
-
verified_evidence: false,
|
|
268
|
-
required_deliverables: [],
|
|
269
|
-
depends_on: [],
|
|
270
|
-
role: 'neutral',
|
|
271
|
-
skill_ref: QE_SKILL,
|
|
272
|
-
allowed_skills: [],
|
|
273
|
-
validator_pin: null,
|
|
274
|
-
...over,
|
|
275
|
-
};
|
|
276
|
-
}
|
|
277
|
-
/** The verify TOOL phase — deterministic, pinned to the evidence floor (the run left a change),
|
|
278
|
-
* `executes_code: false` like the deliver phase: engine-owned tooling, not governed agent work
|
|
279
|
-
* (a Tool unit is never worktree-guarded, so the harness's caches cannot deny it). */
|
|
280
|
-
export function qeVerifyPhase(dependsOn = ['author']) {
|
|
281
|
-
return {
|
|
282
|
-
id: QE_VERIFY_PHASE_ID,
|
|
283
|
-
kind: 'test',
|
|
284
|
-
executor: { type: 'tool', cmd: ['bash', '-lc', qeVerifyScript()] },
|
|
285
|
-
gate_type: 'execution',
|
|
286
|
-
gate: 'auto',
|
|
287
|
-
executes_code: false,
|
|
288
|
-
verified_evidence: true,
|
|
289
|
-
required_deliverables: [],
|
|
290
|
-
depends_on: dependsOn,
|
|
291
|
-
role: 'neutral',
|
|
292
|
-
skill_ref: null,
|
|
293
|
-
allowed_skills: [],
|
|
294
|
-
validator_pin: EVIDENCE_FLOOR_PIN,
|
|
295
|
-
};
|
|
296
|
-
}
|
|
297
|
-
/** The shipped definition (see the module doc). Exported as data — tests assert it, the adapter
|
|
298
|
-
* serves it from `BUILTIN_WORKFLOWS`, and the engine validates it as authored at the overlay write. */
|
|
299
|
-
export const QE_AUTHOR_TESTS_WORKFLOW_DEF = {
|
|
300
|
-
id: QE_AUTHOR_TESTS_WORKFLOW,
|
|
301
|
-
phases: [
|
|
302
|
-
agentPhase('recon', 'recon', RECON_INSTRUCTIONS, { gate_type: 'strategy', role: 'neutral' }),
|
|
303
|
-
agentPhase('author', 'build', AUTHOR_INSTRUCTIONS, {
|
|
304
|
-
depends_on: ['recon'],
|
|
305
|
-
role: 'creator',
|
|
306
|
-
executes_code: true,
|
|
307
|
-
validator_pin: EVIDENCE_FLOOR_PIN,
|
|
308
|
-
}),
|
|
309
|
-
qeVerifyPhase(['author']),
|
|
310
|
-
agentPhase('review', 'review', REVIEW_INSTRUCTIONS, {
|
|
311
|
-
depends_on: [QE_VERIFY_PHASE_ID],
|
|
312
|
-
role: 'evaluator',
|
|
313
|
-
gate: { human_confirm_if: 'verdict_not_pass' },
|
|
314
|
-
validator_pin: EVIDENCE_FLOOR_PIN,
|
|
315
|
-
}),
|
|
316
|
-
],
|
|
317
|
-
};
|
|
318
24
|
/** `key=value` and `key="quoted value"` pairs of one marker line. */
|
|
319
25
|
function fields(rest) {
|
|
320
26
|
const out = {};
|