@fro.bot/systematic 3.17.0 → 3.18.0

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/HARNESSES.md CHANGED
@@ -55,6 +55,30 @@ Behavioral enforcement rides a plugin output style (`force-for-plugin: true`), w
55
55
 
56
56
  Honest capability boundary: output-style enforcement is real and applies automatically on install, but it operates at the system-prompt level — the same layer as any other instruction the model receives — so it is strong guidance, not a hard gate the model cannot violate. Coverage also differs by surface: plugin-bundled hooks fire app-wide, including in Cowork, while a project-local `.claude/settings.json` hook fires in the Code tab but not in Cowork — state or enforcement reaching Cowork sessions has to come through the plugin, not a project-local hook. Integration coverage lives in `tests/integration/claude-code.test.ts` [CC-10].
57
57
 
58
+ ## Review-return validator — packaged paths
59
+
60
+ The raw-return and aggregate validators ship as one self-contained Node bundle,
61
+ `skills/ce-review/scripts/validate-review.mjs`, generated from
62
+ `src/ce-review-validator.ts` by `scripts/generate-ce-review-validator.ts` and
63
+ gated by `bun run ce-review-validator:drift`. Recorded execution evidence for
64
+ this surface:
65
+
66
+ - **npm / OpenCode / Pi package layout** — real Node execution from an extracted
67
+ `npm pack --ignore-scripts` archive, resolving the script through its packaged
68
+ `skills/ce-review` directory [RV-1].
69
+ - **OCX-selected tree** — real Node execution from the `ce-review` component's
70
+ declared file selection [RV-1].
71
+ - **Claude Code generated bundle** — real Node execution from the output written
72
+ by `generatePluginFiles`/`writePluginFiles` [RV-1].
73
+ - **OpenCode scripted host** — a real scripted-host session loads the packaged
74
+ `ce:review` skill and invokes the packaged script's `return` subcommand through
75
+ its `SKILL_DIR` anchor [RV-2].
76
+
77
+ No live Pi, OCX, or Claude Code runtime host was executed for this check; those
78
+ layouts are proven by package-tree execution under real Node, not by running the
79
+ harness. This is package-tree execution plus one real OpenCode scripted host,
80
+ not cross-harness runtime parity.
81
+
58
82
  ## Codex CLI — Tier 2 documented portability target
59
83
 
60
84
  The supplied evidence verifies only `request_user_input`: its definition names the tool [CX-1], and its handler blocks while restricting use to the root thread, rejecting subagents [CX-2]. Delegation, task tracking, skill loading, and skills-file support were not checked and remain **UNVERIFIED**. Systematic ships no Codex adapter or profile.
@@ -120,3 +144,5 @@ Migrated-skill discipline is enforced by the [content-integrity gate](scripts/co
120
144
  - **GH-6** — [Copilot CLI skills](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-skills).
121
145
  - **GH-7** — [Copilot best-practices instructions](https://docs.github.com/en/copilot/get-started/best-practices).
122
146
  - **GH-8** — [Copilot `AGENTS.md` support](https://github.blog/changelog/2025-08-28-copilot-coding-agent-now-supports-agents-md-custom-instructions/).
147
+ - **RV-1** — `tests/unit/ce-review-validator-packaging.test.ts` (real Node execution from the npm/OpenCode/Pi package tree, the OCX-selected tree, and the Claude Code generated bundle).
148
+ - **RV-2** — `tests/integration/ce-review-return-validation.test.ts` (real OpenCode scripted host invoking the packaged `skills/ce-review/scripts/validate-review.mjs` through its `SKILL_DIR` anchor).
@@ -0,0 +1,23 @@
1
+ import { type ReadChunk } from './lib/review-return-validator.js';
2
+ /**
3
+ * Entry point for the generated, self-contained `ce:review` skill-local
4
+ * validator shim (`skills/ce-review/scripts/validate-review.mjs`).
5
+ *
6
+ * This is a thin packaging compatibility shim, not a public extension point:
7
+ * it dispatches exactly two subcommands and owns no validation logic itself.
8
+ * - `return` -> the bounded raw persona-return validator (stdin).
9
+ * - `artifact` -> the existing aggregate review-artifact validator.
10
+ *
11
+ * It exists because shipped skill layouts cannot all rely on the npm CLI or
12
+ * `dist/`; every harness invokes the committed bundle through `SKILL_DIR`.
13
+ */
14
+ export declare const CE_REVIEW_VALIDATOR_USAGE = "Usage: node validate-review.mjs <return|artifact> [...]";
15
+ export interface CeReviewValidatorOptions {
16
+ readonly argv: readonly string[];
17
+ readonly cwd?: string;
18
+ readonly isTTY?: boolean;
19
+ readonly readChunk?: ReadChunk;
20
+ readonly outputSink?: (message: string) => void;
21
+ readonly errorSink?: (message: string) => void;
22
+ }
23
+ export declare function runCeReviewValidator(options: CeReviewValidatorOptions): number;
package/dist/cli.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { type CapabilityClock, type CapabilityOutputSink, type ConfigObservationMetadata } from './lib/capability-snapshot.js';
3
+ import { type ReadChunk } from './lib/review-return-validator.js';
3
4
  export interface CapabilityCliRoots {
4
5
  readonly agentsRoot: string;
5
6
  readonly cwd: string;
@@ -24,4 +25,13 @@ interface ValidateReviewArtifactCliOptions {
24
25
  readonly errorSink?: (message: string) => void;
25
26
  }
26
27
  export declare function runValidateReviewArtifactCli(options: ValidateReviewArtifactCliOptions): number;
28
+ interface ValidateReviewReturnCliOptions {
29
+ readonly argv: readonly string[];
30
+ readonly fd?: number;
31
+ readonly isTTY?: boolean;
32
+ readonly readChunk?: ReadChunk;
33
+ readonly outputSink?: (message: string) => void;
34
+ readonly errorSink?: (message: string) => void;
35
+ }
36
+ export declare function runValidateReviewReturnCli(options: ValidateReviewReturnCliOptions): number;
27
37
  export {};