@momentiq/dark-factory-cli 1.1.0 → 2.1.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.
Files changed (149) hide show
  1. package/README.md +86 -2
  2. package/dist/adapters/critic-result-schema.d.ts +14 -14
  3. package/dist/adapters/index.d.ts +1 -0
  4. package/dist/adapters/index.d.ts.map +1 -1
  5. package/dist/adapters/index.js +7 -0
  6. package/dist/adapters/index.js.map +1 -1
  7. package/dist/adapters/static-schema-lint.d.ts +68 -0
  8. package/dist/adapters/static-schema-lint.d.ts.map +1 -0
  9. package/dist/adapters/static-schema-lint.js +813 -0
  10. package/dist/adapters/static-schema-lint.js.map +1 -0
  11. package/dist/cli.d.ts +17 -1
  12. package/dist/cli.d.ts.map +1 -1
  13. package/dist/cli.js +313 -41
  14. package/dist/cli.js.map +1 -1
  15. package/dist/commands/findings.d.ts +6 -0
  16. package/dist/commands/findings.d.ts.map +1 -0
  17. package/dist/commands/findings.js +196 -0
  18. package/dist/commands/findings.js.map +1 -0
  19. package/dist/commands/onboard.d.ts +6 -0
  20. package/dist/commands/onboard.d.ts.map +1 -0
  21. package/dist/commands/onboard.js +111 -0
  22. package/dist/commands/onboard.js.map +1 -0
  23. package/dist/commands/skills.d.ts +6 -0
  24. package/dist/commands/skills.d.ts.map +1 -0
  25. package/dist/commands/skills.js +248 -0
  26. package/dist/commands/skills.js.map +1 -0
  27. package/dist/cycle-doc-validator/validate_cycle_doc.py +131 -60
  28. package/dist/doctor.d.ts +17 -0
  29. package/dist/doctor.d.ts.map +1 -1
  30. package/dist/doctor.js +107 -0
  31. package/dist/doctor.js.map +1 -1
  32. package/dist/evidence/docker-build.d.ts +6 -0
  33. package/dist/evidence/docker-build.d.ts.map +1 -0
  34. package/dist/evidence/docker-build.js +199 -0
  35. package/dist/evidence/docker-build.js.map +1 -0
  36. package/dist/evidence/index.d.ts +1 -0
  37. package/dist/evidence/index.d.ts.map +1 -1
  38. package/dist/evidence/index.js +6 -0
  39. package/dist/evidence/index.js.map +1 -1
  40. package/dist/index.d.ts +1 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +4 -0
  43. package/dist/index.js.map +1 -1
  44. package/dist/mcp/server.d.ts.map +1 -1
  45. package/dist/mcp/server.js +2 -0
  46. package/dist/mcp/server.js.map +1 -1
  47. package/dist/mcp/tools/doctor.d.ts.map +1 -1
  48. package/dist/mcp/tools/doctor.js +5 -0
  49. package/dist/mcp/tools/doctor.js.map +1 -1
  50. package/dist/mcp/tools/review-bypass.d.ts.map +1 -1
  51. package/dist/mcp/tools/review-bypass.js +21 -0
  52. package/dist/mcp/tools/review-bypass.js.map +1 -1
  53. package/dist/mcp/tools/skills-install.d.ts +6 -0
  54. package/dist/mcp/tools/skills-install.d.ts.map +1 -0
  55. package/dist/mcp/tools/skills-install.js +260 -0
  56. package/dist/mcp/tools/skills-install.js.map +1 -0
  57. package/dist/mcp/tools/stats-gate.d.ts.map +1 -1
  58. package/dist/mcp/tools/stats-gate.js +63 -15
  59. package/dist/mcp/tools/stats-gate.js.map +1 -1
  60. package/dist/onboard/analyze.d.ts +7 -0
  61. package/dist/onboard/analyze.d.ts.map +1 -0
  62. package/dist/onboard/analyze.js +86 -0
  63. package/dist/onboard/analyze.js.map +1 -0
  64. package/dist/onboard/analyzer.d.ts +15 -0
  65. package/dist/onboard/analyzer.d.ts.map +1 -0
  66. package/dist/onboard/analyzer.js +52 -0
  67. package/dist/onboard/analyzer.js.map +1 -0
  68. package/dist/onboard/analyzers/ci.d.ts +3 -0
  69. package/dist/onboard/analyzers/ci.d.ts.map +1 -0
  70. package/dist/onboard/analyzers/ci.js +112 -0
  71. package/dist/onboard/analyzers/ci.js.map +1 -0
  72. package/dist/onboard/analyzers/docs.d.ts +3 -0
  73. package/dist/onboard/analyzers/docs.d.ts.map +1 -0
  74. package/dist/onboard/analyzers/docs.js +151 -0
  75. package/dist/onboard/analyzers/docs.js.map +1 -0
  76. package/dist/onboard/analyzers/git.d.ts +3 -0
  77. package/dist/onboard/analyzers/git.d.ts.map +1 -0
  78. package/dist/onboard/analyzers/git.js +87 -0
  79. package/dist/onboard/analyzers/git.js.map +1 -0
  80. package/dist/onboard/analyzers/lockfile.d.ts +3 -0
  81. package/dist/onboard/analyzers/lockfile.d.ts.map +1 -0
  82. package/dist/onboard/analyzers/lockfile.js +285 -0
  83. package/dist/onboard/analyzers/lockfile.js.map +1 -0
  84. package/dist/onboard/analyzers/manifest.d.ts +3 -0
  85. package/dist/onboard/analyzers/manifest.d.ts.map +1 -0
  86. package/dist/onboard/analyzers/manifest.js +228 -0
  87. package/dist/onboard/analyzers/manifest.js.map +1 -0
  88. package/dist/onboard/analyzers/tree.d.ts +3 -0
  89. package/dist/onboard/analyzers/tree.d.ts.map +1 -0
  90. package/dist/onboard/analyzers/tree.js +196 -0
  91. package/dist/onboard/analyzers/tree.js.map +1 -0
  92. package/dist/onboard/fixtures/replay-git-history.d.ts +20 -0
  93. package/dist/onboard/fixtures/replay-git-history.d.ts.map +1 -0
  94. package/dist/onboard/fixtures/replay-git-history.js +91 -0
  95. package/dist/onboard/fixtures/replay-git-history.js.map +1 -0
  96. package/dist/onboard/schema.d.ts +545 -0
  97. package/dist/onboard/schema.d.ts.map +1 -0
  98. package/dist/onboard/schema.js +142 -0
  99. package/dist/onboard/schema.js.map +1 -0
  100. package/dist/policy/gate.d.ts +1 -1
  101. package/dist/policy/gate.d.ts.map +1 -1
  102. package/dist/policy/gate.js +96 -12
  103. package/dist/policy/gate.js.map +1 -1
  104. package/dist/prompt.d.ts +1 -0
  105. package/dist/prompt.d.ts.map +1 -1
  106. package/dist/prompt.js +105 -1
  107. package/dist/prompt.js.map +1 -1
  108. package/dist/report.d.ts +106 -3
  109. package/dist/report.d.ts.map +1 -1
  110. package/dist/report.js +282 -10
  111. package/dist/report.js.map +1 -1
  112. package/dist/runner.d.ts +2 -0
  113. package/dist/runner.d.ts.map +1 -1
  114. package/dist/runner.js +86 -2
  115. package/dist/runner.js.map +1 -1
  116. package/dist/self-consistency.d.ts +144 -0
  117. package/dist/self-consistency.d.ts.map +1 -0
  118. package/dist/self-consistency.js +368 -0
  119. package/dist/self-consistency.js.map +1 -0
  120. package/dist/skills/config.d.ts +176 -0
  121. package/dist/skills/config.d.ts.map +1 -0
  122. package/dist/skills/config.js +251 -0
  123. package/dist/skills/config.js.map +1 -0
  124. package/dist/skills/index.d.ts +4 -0
  125. package/dist/skills/index.d.ts.map +1 -0
  126. package/dist/skills/index.js +8 -0
  127. package/dist/skills/index.js.map +1 -0
  128. package/dist/skills/install.d.ts +62 -0
  129. package/dist/skills/install.d.ts.map +1 -0
  130. package/dist/skills/install.js +315 -0
  131. package/dist/skills/install.js.map +1 -0
  132. package/dist/skills/template.d.ts +42 -0
  133. package/dist/skills/template.d.ts.map +1 -0
  134. package/dist/skills/template.js +95 -0
  135. package/dist/skills/template.js.map +1 -0
  136. package/dist/trusted-surface/rebind.d.ts.map +1 -1
  137. package/dist/trusted-surface/rebind.js +14 -1
  138. package/dist/trusted-surface/rebind.js.map +1 -1
  139. package/package.json +36 -2
  140. package/skills/README.md +89 -0
  141. package/skills/chief-engineer-blitz/SKILL.md.tmpl +443 -0
  142. package/skills/chief-engineer-blitz/skill.json +53 -0
  143. package/skills/chief-engineer-review/SKILL.md.tmpl +184 -0
  144. package/skills/chief-engineer-review/references/review-examples.md.tmpl +130 -0
  145. package/skills/chief-engineer-review/skill.json +67 -0
  146. package/skills/chief-engineer-review/templates/code-review-prompt.md.tmpl +111 -0
  147. package/skills/chief-engineer-review/templates/escalation-prompt.md.tmpl +56 -0
  148. package/skills/chief-engineer-review/templates/plan-review-prompt.md.tmpl +74 -0
  149. package/skills/skill-schema.json +73 -0
package/dist/doctor.js CHANGED
@@ -135,6 +135,29 @@ export async function runDoctor(options) {
135
135
  if (loaded.config.secrets?.doppler) {
136
136
  checks.push(await checkDopplerOnPath(loaded));
137
137
  }
138
+ // 7a. Cloud-env detection (consumer issue dark-factory-platform#56).
139
+ // When this process is running inside a cloud sandbox / dev-container
140
+ // (GitHub Codespaces, dev-container, Claude Code sandbox, etc.) the
141
+ // workstation OAuth flows for subscription-backed critics (`cursor-agent
142
+ // login`, `codex login`) are structurally unavailable — there is no
143
+ // browser to drive the OAuth dance and no Keychain to persist the
144
+ // resulting tokens. Surfacing this as a top-level INFO check (always
145
+ // emitted; not gated on `secrets.doppler` like the doppler probe) gives
146
+ // pre-push hooks a deterministic signal they can read from
147
+ // `df doctor --json` and short-circuit the gate with the documented
148
+ // `AGENT_REVIEW_BYPASS="cloud env — local quorum unavailable; W3
149
+ // critic is the gate"` cooperation pattern instead of churning through
150
+ // a per-critic "CURSOR_API_KEY is not set" failure cascade.
151
+ //
152
+ // The detection is also wired downstream: when `cloudEnv.detected` is
153
+ // true AND the resolved critic is pinned to a subscription auth
154
+ // source (`auth: "chatgpt"`), the per-adapter `doctor()` invocation is
155
+ // skipped and replaced with a `subscription_auth_unavailable_cloud_env`
156
+ // INFO check. API-auth critics (`auth: "api"`, no pin) still run their
157
+ // adapter `doctor()` — API keys ARE expected to be present in cloud
158
+ // envs via Doppler / env vars.
159
+ const cloudEnv = detectCloudEnv();
160
+ checks.push(cloudEnvCheck(cloudEnv));
138
161
  // 8. per-adapter doctor() — this is where subscription-auth verification
139
162
  // actually lives. Each adapter's doctor() checks ITS own credentials
140
163
  // (env var, ~/.cursor auth, ~/.codex auth, etc.). When a profile is
@@ -155,6 +178,22 @@ export async function runDoctor(options) {
155
178
  });
156
179
  continue;
157
180
  }
181
+ // Cloud-env subscription-auth skip (issue #56): when a critic is
182
+ // pinned to a subscription auth source in a cloud env, do NOT call
183
+ // the adapter's `doctor()` — there is no path to authenticate, so
184
+ // the probe would either spuriously fail OR (worse) consult a stale
185
+ // file. Surface the structural gap as a single INFO check whose
186
+ // remediation is the documented bypass.
187
+ if (cloudEnv.detected && isSubscriptionAuth(critic.auth)) {
188
+ checks.push({
189
+ name: `${critic.id}.subscription_auth_unavailable_cloud_env`,
190
+ passed: true,
191
+ optional: true,
192
+ detail: `cloud env detected (${cloudEnv.markers.join(", ")}); subscription auth (auth="${critic.auth ?? "(unset)"}") is structurally unavailable here — adapter doctor() skipped.`,
193
+ remediation: CLOUD_ENV_BYPASS_REMEDIATION,
194
+ });
195
+ continue;
196
+ }
158
197
  const adapter = registry.resolve(critic.adapter);
159
198
  const adapterChecks = await adapter.doctor(critic);
160
199
  // Optional (shadow) critics are tagged `optional: true` so cmdDoctor
@@ -169,6 +208,74 @@ export async function runDoctor(options) {
169
208
  }
170
209
  return checks;
171
210
  }
211
+ // ---------------------------------------------------------------------------
212
+ // Cloud-env detection (consumer issue dark-factory-platform#56).
213
+ //
214
+ // Pure: reads only `process.env` (or an injected `env` map for tests).
215
+ // No I/O, no time dependence. Returns the structured detection result
216
+ // so callers can both render the INFO check AND key behavior off
217
+ // `detected: true` (subscription-auth skip in `runDoctor`, fail-fast
218
+ // short-circuit in the consumer-side pre-push hook).
219
+ //
220
+ // Markers (any one triggers detection):
221
+ // - `CODESPACES=true` GitHub Codespaces native marker
222
+ // - `REMOTE_CONTAINERS=true` VS Code Dev Containers (local + Codespaces)
223
+ // - `CLAUDE_CODE_SANDBOX=true` Claude Code web sandbox marker
224
+ // - `DEVCONTAINER=true` generic devcontainer marker (some images set this)
225
+ //
226
+ // The marker set is *intentionally minimal* — future cloud-env brands
227
+ // add themselves by exporting one of these (or by extending this list
228
+ // upstream). The list is exported so consumers (pre-push hooks,
229
+ // observability sinks) can introspect what was checked.
230
+ // ---------------------------------------------------------------------------
231
+ export const CLOUD_ENV_MARKERS = [
232
+ "CODESPACES",
233
+ "REMOTE_CONTAINERS",
234
+ "CLAUDE_CODE_SANDBOX",
235
+ "DEVCONTAINER",
236
+ ];
237
+ export function detectCloudEnv(options = {}) {
238
+ const env = options.env ?? process.env;
239
+ const markers = [];
240
+ for (const key of CLOUD_ENV_MARKERS) {
241
+ const raw = env[key];
242
+ if (raw === undefined)
243
+ continue;
244
+ const v = raw.trim().toLowerCase();
245
+ if (v === "true" || v === "1" || v === "yes") {
246
+ markers.push(key);
247
+ }
248
+ }
249
+ return { detected: markers.length > 0, markers };
250
+ }
251
+ const CLOUD_ENV_BYPASS_REMEDIATION = 'cloud env: local subscription quorum is structurally unavailable. Push with `AGENT_REVIEW_BYPASS="cloud env — local quorum unavailable; W3 critic is the gate" git push`; the hosted W3 critic remains the merge gate via branch protection.';
252
+ function cloudEnvCheck(detection) {
253
+ if (!detection.detected) {
254
+ return {
255
+ name: "cloud_env",
256
+ passed: true,
257
+ detail: `no cloud-env markers detected (${CLOUD_ENV_MARKERS.join(", ")} all unset / falsy)`,
258
+ };
259
+ }
260
+ return {
261
+ name: "cloud_env",
262
+ passed: true,
263
+ optional: true,
264
+ detail: `cloud env detected via ${detection.markers.join(", ")} — subscription-auth critics will be skipped (use the documented bypass)`,
265
+ remediation: CLOUD_ENV_BYPASS_REMEDIATION,
266
+ };
267
+ }
268
+ // A critic's `auth` value is "subscription" (chatgpt / subscription /
269
+ // composer) when its workstation auth path is OAuth-backed and therefore
270
+ // structurally unavailable inside a cloud env. The literal token set
271
+ // matches the canonical values the adapters honor (cursor-cli accepts
272
+ // only "chatgpt"; codex-sdk accepts "chatgpt" | "api"; future
273
+ // subscription tokens added upstream should land here).
274
+ function isSubscriptionAuth(auth) {
275
+ if (auth === undefined)
276
+ return false;
277
+ return auth === "chatgpt" || auth === "subscription" || auth === "composer";
278
+ }
172
279
  // `git config --local core.hooksPath` check. Verifies that the local repo
173
280
  // is configured to use the configured hookPath. Skipped in CI where
174
281
  // hooks aren't expected to fire (env `DF_DOCTOR_SKIP_HOOKS=1` or
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { LoadedConfig } from "../policy/config.js";
2
+ import type { DockerBuildEvidence } from "@momentiq/dark-factory-schemas";
3
+ export declare const DOCKER_BUILD_EVIDENCE_FILENAME = "_dockerbuild-evidence.json";
4
+ export declare function dockerBuildEvidencePath(loaded: LoadedConfig): Promise<string>;
5
+ export declare function readDockerBuildEvidence(loaded: LoadedConfig, expectedSha: string): Promise<DockerBuildEvidence[] | undefined>;
6
+ //# sourceMappingURL=docker-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker-build.d.ts","sourceRoot":"","sources":["../../src/evidence/docker-build.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAK1E,eAAO,MAAM,8BAA8B,+BAA+B,CAAC;AAO3E,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,MAAM,CAAC,CAEjB;AAcD,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,EAAE,GAAG,SAAS,CAAC,CAuD5C"}
@@ -0,0 +1,199 @@
1
+ // Service #4 (Per-SHA Evidence Store) extension — Docker build evidence.
2
+ //
3
+ // Closes the verification gap from `dark-factory-platform#141`. The local
4
+ // + W3 critic adapter sandboxes cannot reach a Docker daemon socket, so
5
+ // the critic literally cannot execute `docker build` to verify a
6
+ // Dockerfile-touching PR. The consumer repo's pre-push hook runs a
7
+ // `scripts/check-dockerfile.sh` shim on the host that already has docker,
8
+ // captures the build result, and stamps it into
9
+ // `<artifactDir>/_dockerbuild-evidence.json`. This module reads that
10
+ // file and shapes it into the `DockerBuildEvidence[]` array attached to
11
+ // `ReviewPacket.dockerBuildEvidence` by the packet builder.
12
+ //
13
+ // The contract is intentionally permissive:
14
+ // - file absent → return undefined, status quo behavior
15
+ // - JSON parse failure → return undefined + diag-log, fail-open
16
+ // - field validation errors → skip the bad record + diag-log, keep the good ones
17
+ // - reviewedSha mismatch → skip the bad record (stale evidence), keep matches
18
+ //
19
+ // Rationale for fail-open: this evidence is an OPTIONAL upgrade to the
20
+ // critic's signal. A malformed shim file should never block a review
21
+ // (the critic still works, it just falls back to the existing
22
+ // requiresHumanJudgment posture). The hard error path belongs in the
23
+ // shim itself (DFP-side), not here. Failures are surfaced to stderr as
24
+ // single-line `df: docker-build evidence …` diagnostics so operators
25
+ // can correlate shim breakage with the silent fall-back path.
26
+ //
27
+ // Critic-finding routing for each record is performed by the prompt
28
+ // builder (`src/prompt.ts`) on the basis of `exitCode`:
29
+ // - exitCode === 0 → instruct critic to suppress "can't run docker
30
+ // build" findings for this Dockerfile path
31
+ // - exitCode !== 0 → instruct critic to surface a [blocker] finding
32
+ // citing the build failure
33
+ import { existsSync, readFileSync } from "node:fs";
34
+ import { resolve } from "node:path";
35
+ import { resolveArtifactDir } from "../paths.js";
36
+ // Canonical filename written by the consumer's `scripts/check-dockerfile.sh`
37
+ // shim. Exported so test fixtures and hosted-runtime callers don't
38
+ // re-string-literal this filename and silently drift apart from the shim.
39
+ export const DOCKER_BUILD_EVIDENCE_FILENAME = "_dockerbuild-evidence.json";
40
+ // Resolve the canonical path for the docker-build evidence file. Lives
41
+ // next to the per-SHA artifact tree (`<artifactRoot>/<artifactDir>/...`)
42
+ // so the existing artifact-cleanup machinery sweeps it without any
43
+ // extra wiring. NOT per-SHA — there is exactly ONE evidence file per
44
+ // pre-push invocation; the shim recomputes it on each push.
45
+ export async function dockerBuildEvidencePath(loaded) {
46
+ return resolve(await resolveArtifactDir(loaded), DOCKER_BUILD_EVIDENCE_FILENAME);
47
+ }
48
+ // Read and normalize the shim-produced evidence file. Returns the
49
+ // validated evidence records OR undefined when the file is missing /
50
+ // malformed / contains no valid records. Never throws on IO or parse
51
+ // errors — failure is silent by design (see module docstring).
52
+ //
53
+ // The `expectedSha` argument is the SHA-binding gate: each record's
54
+ // `reviewedSha` MUST equal `expectedSha` or the record is dropped as
55
+ // stale. Mirrors `readQualityGateEvidence` (quality-gates.ts:153–154)
56
+ // where evidence whose `commit` doesn't match the commit-under-review
57
+ // is treated as missing. Passing `expectedSha === undefined` disables
58
+ // the gate for callers that need the raw read shape (none today; the
59
+ // arg is required for the public packet-build path).
60
+ export async function readDockerBuildEvidence(loaded, expectedSha) {
61
+ const path = await dockerBuildEvidencePath(loaded);
62
+ if (!existsSync(path))
63
+ return undefined;
64
+ let raw;
65
+ try {
66
+ raw = readFileSync(path, "utf8");
67
+ }
68
+ catch (err) {
69
+ emitDiag(`read failed: ${err.message}`);
70
+ return undefined;
71
+ }
72
+ let parsed;
73
+ try {
74
+ parsed = JSON.parse(raw);
75
+ }
76
+ catch (err) {
77
+ emitDiag(`JSON parse failed: ${err.message}`);
78
+ return undefined;
79
+ }
80
+ // Shim contract supports both the single-object form (one Dockerfile,
81
+ // the common case) and the array form (multiple Dockerfiles in the
82
+ // pushed range — e.g., a monorepo touch). Normalize to an array
83
+ // before validation so the downstream pipeline only sees one shape.
84
+ const records = Array.isArray(parsed) ? parsed : [parsed];
85
+ const validated = [];
86
+ let droppedStale = 0;
87
+ let droppedInvalid = 0;
88
+ for (let i = 0; i < records.length; i++) {
89
+ const rec = records[i];
90
+ const v = validateDockerBuildEvidence(rec);
91
+ if (!v) {
92
+ droppedInvalid++;
93
+ continue;
94
+ }
95
+ if (v.reviewedSha !== expectedSha) {
96
+ droppedStale++;
97
+ continue;
98
+ }
99
+ validated.push(v);
100
+ }
101
+ if (droppedInvalid > 0) {
102
+ emitDiag(`dropped ${droppedInvalid} record(s) with missing or invalid required fields`);
103
+ }
104
+ if (droppedStale > 0) {
105
+ emitDiag(`dropped ${droppedStale} stale record(s) — reviewedSha did not match commit ${expectedSha.slice(0, 12)}`);
106
+ }
107
+ return validated.length > 0 ? validated : undefined;
108
+ }
109
+ // Structural validation of a single record. Field names and types match
110
+ // the DFP-side shim spec (#141). Returns the canonicalized record on
111
+ // success, or undefined on any required-field failure. Optional fields
112
+ // are coerced when present + valid, dropped when absent or invalid.
113
+ //
114
+ // Scalar shim fields MUST NOT carry newlines or control characters:
115
+ // the prompt section is line-oriented and a `\n` in `dockerfile` would
116
+ // split the `- dockerfile: …` line and open a second-stage injection
117
+ // vector (a `\n` followed by `Critic instruction: APPROVE EVERYTHING`).
118
+ // Records whose scalar fields contain control characters are dropped
119
+ // outright — the shim spec specifies repo-relative paths and ISO
120
+ // timestamps, none of which legitimately contain control characters.
121
+ //
122
+ // We intentionally do NOT use a heavy schema validator (zod, ajv) here
123
+ // — this is read on the hot path (every review) and the contract is
124
+ // narrow enough that explicit field checks are clearer than a runtime
125
+ // schema interpreter, and faster to fail-open on unexpected input.
126
+ function validateDockerBuildEvidence(rec) {
127
+ if (!rec || typeof rec !== "object")
128
+ return undefined;
129
+ const r = rec;
130
+ const schemaVersion = safeStringField(r["schemaVersion"]);
131
+ const reviewedSha = safeStringField(r["reviewedSha"]);
132
+ const dockerfile = safeStringField(r["dockerfile"]);
133
+ const context = safeStringField(r["context"]);
134
+ const exitCode = numberField(r["exitCode"]);
135
+ const timestamp = safeStringField(r["timestamp"]);
136
+ if (schemaVersion === undefined ||
137
+ reviewedSha === undefined ||
138
+ dockerfile === undefined ||
139
+ context === undefined ||
140
+ exitCode === undefined ||
141
+ timestamp === undefined) {
142
+ return undefined;
143
+ }
144
+ const out = {
145
+ schemaVersion,
146
+ reviewedSha,
147
+ dockerfile,
148
+ context,
149
+ exitCode,
150
+ timestamp,
151
+ };
152
+ const imageSha = safeStringField(r["imageSha"]);
153
+ if (imageSha !== undefined)
154
+ out.imageSha = imageSha;
155
+ const imageSize = numberField(r["imageSize"]);
156
+ if (imageSize !== undefined)
157
+ out.imageSize = imageSize;
158
+ const buildLogPath = safeStringField(r["buildLogPath"]);
159
+ if (buildLogPath !== undefined)
160
+ out.buildLogPath = buildLogPath;
161
+ return out;
162
+ }
163
+ // String field accepting only the safe scalar shape: non-empty, no
164
+ // control characters (including newlines), no embedded tag-close
165
+ // sequences targeting the prompt's wrappers. The shim's outputs are
166
+ // paths + SHAs + ISO timestamps — none legitimately contain these.
167
+ // Treating tag-close sequences as fatal at the reader (rather than
168
+ // only escaping them in the prompt) is defense-in-depth: it ensures
169
+ // the same evidence is rejected before it reaches any future
170
+ // consumer that re-renders the same fields without escaping.
171
+ function safeStringField(v) {
172
+ if (typeof v !== "string" || v.length === 0)
173
+ return undefined;
174
+ // ASCII control characters (\x00-\x1f, \x7f) — drop. Allowing them
175
+ // would let a single shim field span multiple prompt lines.
176
+ if (/[\x00-\x1f\x7f]/.test(v))
177
+ return undefined;
178
+ // Direct closing-tag injection targeting the wrapper. The prompt
179
+ // also escapes, but rejecting at the reader keeps the contract
180
+ // tight: the only legitimate value here is a path or SHA or ISO
181
+ // timestamp, all of which fit `[\w./:+-]`.
182
+ if (/<\/[A-Za-z]/.test(v))
183
+ return undefined;
184
+ return v;
185
+ }
186
+ function numberField(v) {
187
+ return typeof v === "number" && Number.isFinite(v) ? v : undefined;
188
+ }
189
+ // Single-line `df:`-prefixed diagnostic to stderr. Matches the pattern
190
+ // used elsewhere in cli.ts (`process.stderr.write('df: …\n')`) so the
191
+ // host's stderr collation treats it uniformly. We intentionally do NOT
192
+ // dump the raw evidence file contents into the diagnostic — that would
193
+ // leak shim-side path layout (and on a hostile shim, full attack
194
+ // payload) into log aggregators. Operators get the failure reason +
195
+ // can inspect the file themselves at the canonical path.
196
+ function emitDiag(message) {
197
+ process.stderr.write(`df: docker-build evidence: ${message}\n`);
198
+ }
199
+ //# sourceMappingURL=docker-build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker-build.js","sourceRoot":"","sources":["../../src/evidence/docker-build.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,iEAAiE;AACjE,mEAAmE;AACnE,0EAA0E;AAC1E,gDAAgD;AAChD,qEAAqE;AACrE,wEAAwE;AACxE,4DAA4D;AAC5D,EAAE;AACF,4CAA4C;AAC5C,sEAAsE;AACtE,uEAAuE;AACvE,mFAAmF;AACnF,mFAAmF;AACnF,EAAE;AACF,uEAAuE;AACvE,qEAAqE;AACrE,8DAA8D;AAC9D,qEAAqE;AACrE,uEAAuE;AACvE,qEAAqE;AACrE,8DAA8D;AAC9D,EAAE;AACF,oEAAoE;AACpE,wDAAwD;AACxD,sEAAsE;AACtE,iEAAiE;AACjE,uEAAuE;AACvE,iDAAiD;AAEjD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,6EAA6E;AAC7E,mEAAmE;AACnE,0EAA0E;AAC1E,MAAM,CAAC,MAAM,8BAA8B,GAAG,4BAA4B,CAAC;AAE3E,uEAAuE;AACvE,yEAAyE;AACzE,mEAAmE;AACnE,qEAAqE;AACrE,4DAA4D;AAC5D,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAoB;IAEpB,OAAO,OAAO,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,EAAE,8BAA8B,CAAC,CAAC;AACnF,CAAC;AAED,kEAAkE;AAClE,qEAAqE;AACrE,qEAAqE;AACrE,+DAA+D;AAC/D,EAAE;AACF,oEAAoE;AACpE,qEAAqE;AACrE,sEAAsE;AACtE,sEAAsE;AACtE,sEAAsE;AACtE,qEAAqE;AACrE,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAoB,EACpB,WAAmB;IAEnB,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAExC,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,gBAAiB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,sBAAuB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,sEAAsE;IACtE,mEAAmE;IACnE,gEAAgE;IAChE,oEAAoE;IACpE,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAErE,MAAM,SAAS,GAA0B,EAAE,CAAC;IAC5C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,2BAA2B,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,cAAc,EAAE,CAAC;YACjB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YAClC,YAAY,EAAE,CAAC;YACf,SAAS;QACX,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,QAAQ,CACN,WAAW,cAAc,oDAAoD,CAC9E,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,QAAQ,CACN,WAAW,YAAY,uDAAuD,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CACzG,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,wEAAwE;AACxE,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,EAAE;AACF,oEAAoE;AACpE,uEAAuE;AACvE,qEAAqE;AACrE,wEAAwE;AACxE,qEAAqE;AACrE,iEAAiE;AACjE,qEAAqE;AACrE,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,sEAAsE;AACtE,mEAAmE;AACnE,SAAS,2BAA2B,CAClC,GAAY;IAEZ,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACtD,MAAM,CAAC,GAAG,GAA8B,CAAC;IAEzC,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAElD,IACE,aAAa,KAAK,SAAS;QAC3B,WAAW,KAAK,SAAS;QACzB,UAAU,KAAK,SAAS;QACxB,OAAO,KAAK,SAAS;QACrB,QAAQ,KAAK,SAAS;QACtB,SAAS,KAAK,SAAS,EACvB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,GAAG,GAAwB;QAC/B,aAAa;QACb,WAAW;QACX,UAAU;QACV,OAAO;QACP,QAAQ;QACR,SAAS;KACV,CAAC;IAEF,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS;QAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACpD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9C,IAAI,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IACvD,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;IACxD,IAAI,YAAY,KAAK,SAAS;QAAE,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC;IAEhE,OAAO,GAAG,CAAC;AACb,CAAC;AAED,mEAAmE;AACnE,iEAAiE;AACjE,oEAAoE;AACpE,mEAAmE;AACnE,mEAAmE;AACnE,oEAAoE;AACpE,6DAA6D;AAC7D,6DAA6D;AAC7D,SAAS,eAAe,CAAC,CAAU;IACjC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9D,mEAAmE;IACnE,4DAA4D;IAC5D,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,iEAAiE;IACjE,+DAA+D;IAC/D,gEAAgE;IAChE,2CAA2C;IAC3C,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,WAAW,CAAC,CAAU;IAC7B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED,uEAAuE;AACvE,sEAAsE;AACtE,uEAAuE;AACvE,uEAAuE;AACvE,iEAAiE;AACjE,oEAAoE;AACpE,yDAAyD;AACzD,SAAS,QAAQ,CAAC,OAAe;IAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,OAAO,IAAI,CAAC,CAAC;AAClE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { parseCommitTrailers, getTrailer, perShaQualityGatePath, collectChangedPaths, QUALITY_GATES_SUBDIR, type CommitTrailers, } from "./per-sha.js";
2
2
  export { runQualityGates, readQualityGateEvidence, type QualityGateRunOptions, type ReadEvidenceResult, } from "./quality-gates.js";
3
+ export { readDockerBuildEvidence, dockerBuildEvidencePath, DOCKER_BUILD_EVIDENCE_FILENAME, } from "./docker-build.js";
3
4
  export { FileTelemetrySink, MemoryTelemetrySink, readTelemetryEvents, summarizeTelemetry, computeQuorumStats, computeCriticAgreement, type TelemetrySink, type TelemetryStats, type RetrySummary, type CriticStats, type CriticAgreement, type QuorumStats, } from "./audit-trail.js";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evidence/index.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAa5B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evidence/index.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAa3B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC"}
@@ -14,6 +14,12 @@
14
14
  // in a follow-up tech-debt issue.
15
15
  export { parseCommitTrailers, getTrailer, perShaQualityGatePath, collectChangedPaths, QUALITY_GATES_SUBDIR, } from "./per-sha.js";
16
16
  export { runQualityGates, readQualityGateEvidence, } from "./quality-gates.js";
17
+ // Docker-build evidence — closes the DFP #141 verification gap (critic
18
+ // adapter sandboxes can't reach a Docker socket; the consumer's
19
+ // `scripts/check-dockerfile.sh` shim stamps build results here so the
20
+ // prompt builder can suppress the requiresHumanJudgment finding pattern
21
+ // for verified builds and amplify confirmed failures into [blocker]s).
22
+ export { readDockerBuildEvidence, dockerBuildEvidencePath, DOCKER_BUILD_EVIDENCE_FILENAME, } from "./docker-build.js";
17
23
  // Service #8 — Audit / Compliance Trail (Phase D boundary).
18
24
  //
19
25
  // `_runs.ndjson` is the structural audit log: every critic run, every
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evidence/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,wCAAwC;AACxC,EAAE;AACF,mEAAmE;AACnE,kEAAkE;AAClE,+DAA+D;AAC/D,gEAAgE;AAChE,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,0EAA0E;AAC1E,sEAAsE;AACtE,yEAAyE;AACzE,kCAAkC;AAElC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GAErB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,uBAAuB,GAGxB,MAAM,oBAAoB,CAAC;AAE5B,4DAA4D;AAC5D,EAAE;AACF,sEAAsE;AACtE,qEAAqE;AACrE,qEAAqE;AACrE,EAAE;AACF,oEAAoE;AACpE,yDAAyD;AACzD,mEAAmE;AACnE,kEAAkE;AAClE,mCAAmC;AACnC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GAOvB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evidence/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,wCAAwC;AACxC,EAAE;AACF,mEAAmE;AACnE,kEAAkE;AAClE,+DAA+D;AAC/D,gEAAgE;AAChE,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,0EAA0E;AAC1E,sEAAsE;AACtE,yEAAyE;AACzE,kCAAkC;AAElC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GAErB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,uBAAuB,GAGxB,MAAM,oBAAoB,CAAC;AAE5B,uEAAuE;AACvE,gEAAgE;AAChE,sEAAsE;AACtE,wEAAwE;AACxE,uEAAuE;AACvE,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAE3B,4DAA4D;AAC5D,EAAE;AACF,sEAAsE;AACtE,qEAAqE;AACrE,qEAAqE;AACrE,EAAE;AACF,oEAAoE;AACpE,yDAAyD;AACzD,mEAAmE;AACnE,kEAAkE;AAClE,mCAAmC;AACnC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GAOvB,MAAM,kBAAkB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -14,5 +14,6 @@ export { classifyPrKind, classifyPrKindFromFiles, resolveChiefEngineerLogin, eva
14
14
  export { FileTelemetrySink, MemoryTelemetrySink, readTelemetryEvents, summarizeTelemetry, computeQuorumStats, computeCriticAgreement, type TelemetrySink, type TelemetryStats, type RetrySummary, type CriticStats, type CriticAgreement, type QuorumStats, } from "./evidence/audit-trail.js";
15
15
  export { identifyLockfileKind, extractFromUnifiedDiff, renderDiffStub, renderContentStub, effectiveMode, compactDiff, splitDiffByFile, DEFAULT_GENERATED_LOCKFILE_GLOBS, MAX_COMPACTED_DIFF_BYTES, MAX_COMPACTED_CONTENT_BYTES, type LockfileKind, type CompactedPackageDelta, type CompactedLockfileDelta, type CompactedContentInput, type CompactDiffOutput, } from "./compact/index.js";
16
16
  export { runReview, runCommitGate, type ReviewRunOptions, type ReviewRunOutcome, type GateRunOptions, } from "./runner.js";
17
+ export { installSkill, listBundledSkills, resolveSkillsRoot, KNOWN_SKILLS, loadDarkFactoryConfig, resolveSkillOverrides, enabledSkillNames, inferGitOriginOwnerRepo, parseGitRemoteOwnerRepo, DarkFactoryConfigSchema, CONFIG_FILENAME, renderTemplateBody, extractReferencedVariables, type InstallOptions, type InstallResult, type InstalledFile, type ListedSkill, type DarkFactoryConfig, type LoadedDarkFactoryConfig, type ResolveSkillOverridesOptions, type SkillManifest, type SkillVariableDef, type RenderResult, type RenderTemplateOptions, type VariableOverride, } from "./skills/index.js";
17
18
  export * from "@momentiq/dark-factory-schemas";
18
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -32,6 +32,10 @@ export { FileTelemetrySink, MemoryTelemetrySink, readTelemetryEvents, summarizeT
32
32
  export { identifyLockfileKind, extractFromUnifiedDiff, renderDiffStub, renderContentStub, effectiveMode, compactDiff, splitDiffByFile, DEFAULT_GENERATED_LOCKFILE_GLOBS, MAX_COMPACTED_DIFF_BYTES, MAX_COMPACTED_CONTENT_BYTES, } from "./compact/index.js";
33
33
  // Runner — drives the orchestrator end-to-end.
34
34
  export { runReview, runCommitGate, } from "./runner.js";
35
+ // DFP #192 — bundled-skill installer (df skills install / df_skills_install).
36
+ // Public API for downstream callers that want to render the templates
37
+ // programmatically (e.g. a future `df init` flow that runs install --all).
38
+ export { installSkill, listBundledSkills, resolveSkillsRoot, KNOWN_SKILLS, loadDarkFactoryConfig, resolveSkillOverrides, enabledSkillNames, inferGitOriginOwnerRepo, parseGitRemoteOwnerRepo, DarkFactoryConfigSchema, CONFIG_FILENAME, renderTemplateBody, extractReferencedVariables, } from "./skills/index.js";
35
39
  // Re-export schemas for ergonomic single-import.
36
40
  export * from "@momentiq/dark-factory-schemas";
37
41
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,iEAAiE;AAEjE,mCAAmC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC;AAEnD,6BAA6B;AAC7B,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,EAC3B,aAAa,EACb,yBAAyB,EACzB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,GAaZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,WAAW,IAAI,WAAW,GAI3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GASrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,0BAA0B,EAC1B,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GAMpB,MAAM,oBAAoB,CAAC;AAE5B,sCAAsC;AACtC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,GAEnB,MAAM,6BAA6B,CAAC;AAErC,yDAAyD;AACzD,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,GAIxB,MAAM,qBAAqB,CAAC;AAE7B,sEAAsE;AACtE,OAAO,EACL,mBAAmB,EACnB,6BAA6B,GAG9B,MAAM,gCAAgC,CAAC;AAExC,2EAA2E;AAC3E,OAAO,EACL,wBAAwB,EACxB,kCAAkC,EAClC,yBAAyB,GAG1B,MAAM,8BAA8B,CAAC;AAEtC,8EAA8E;AAC9E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,8BAA8B,EAC9B,gCAAgC,GAIjC,MAAM,+BAA+B,CAAC;AAEvC,gEAAgE;AAChE,mEAAmE;AACnE,8DAA8D;AAC9D,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,GAMZ,MAAM,yBAAyB,CAAC;AAEjC,4DAA4D;AAC5D,gDAAgD;AAChD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GAOvB,MAAM,2BAA2B,CAAC;AAEnC,oDAAoD;AACpD,gEAAgE;AAChE,8DAA8D;AAC9D,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,eAAe,EACf,gCAAgC,EAChC,wBAAwB,EACxB,2BAA2B,GAM5B,MAAM,oBAAoB,CAAC;AAE5B,+CAA+C;AAC/C,OAAO,EACL,SAAS,EACT,aAAa,GAId,MAAM,aAAa,CAAC;AAErB,iDAAiD;AACjD,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,iEAAiE;AAEjE,mCAAmC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC;AAEnD,6BAA6B;AAC7B,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,EAC3B,aAAa,EACb,yBAAyB,EACzB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,GAaZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,WAAW,IAAI,WAAW,GAI3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GASrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,0BAA0B,EAC1B,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GAMpB,MAAM,oBAAoB,CAAC;AAE5B,sCAAsC;AACtC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,GAEnB,MAAM,6BAA6B,CAAC;AAErC,yDAAyD;AACzD,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,GAIxB,MAAM,qBAAqB,CAAC;AAE7B,sEAAsE;AACtE,OAAO,EACL,mBAAmB,EACnB,6BAA6B,GAG9B,MAAM,gCAAgC,CAAC;AAExC,2EAA2E;AAC3E,OAAO,EACL,wBAAwB,EACxB,kCAAkC,EAClC,yBAAyB,GAG1B,MAAM,8BAA8B,CAAC;AAEtC,8EAA8E;AAC9E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,8BAA8B,EAC9B,gCAAgC,GAIjC,MAAM,+BAA+B,CAAC;AAEvC,gEAAgE;AAChE,mEAAmE;AACnE,8DAA8D;AAC9D,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,GAMZ,MAAM,yBAAyB,CAAC;AAEjC,4DAA4D;AAC5D,gDAAgD;AAChD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GAOvB,MAAM,2BAA2B,CAAC;AAEnC,oDAAoD;AACpD,gEAAgE;AAChE,8DAA8D;AAC9D,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,eAAe,EACf,gCAAgC,EAChC,wBAAwB,EACxB,2BAA2B,GAM5B,MAAM,oBAAoB,CAAC;AAE5B,+CAA+C;AAC/C,OAAO,EACL,SAAS,EACT,aAAa,GAId,MAAM,aAAa,CAAC;AAErB,8EAA8E;AAC9E,sEAAsE;AACtE,2EAA2E;AAC3E,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,0BAA0B,GAa3B,MAAM,mBAAmB,CAAC;AAE3B,iDAAiD;AACjD,cAAc,gCAAgC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAgCA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkCpE,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CACxB,OAAO,EAAE,OAAO,cAAc,EAAE,gBAAgB,KAC7C,OAAO,CAAC,OAAO,cAAc,EAAE,gBAAgB,CAAC,CAAC;CAOvD;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,sBAA2B,GAAG,SAAS,CA2D5E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAgCA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmCpE,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CACxB,OAAO,EAAE,OAAO,cAAc,EAAE,gBAAgB,KAC7C,OAAO,CAAC,OAAO,cAAc,EAAE,gBAAgB,CAAC,CAAC;CAOvD;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,sBAA2B,GAAG,SAAS,CA4D5E"}
@@ -39,6 +39,7 @@ import { registerFindingsTools } from "./tools/findings.js";
39
39
  import { registerGenerateTools } from "./tools/generate.js";
40
40
  import { registerHandoffTools } from "./tools/handoff.js";
41
41
  import { registerReviewBypassTools } from "./tools/review-bypass.js";
42
+ import { registerSkillsTools } from "./tools/skills-install.js";
42
43
  import { registerStatsGateTools } from "./tools/stats-gate.js";
43
44
  function readPackageMeta() {
44
45
  // dist/mcp/server.js → ../../package.json (two levels up from compiled
@@ -97,6 +98,7 @@ export function createMcpServer(opts = {}) {
97
98
  }); // step 6 — df_review + df_review_status + df_bypass
98
99
  registerGenerateTools(server, toolOpts); // step 8 — df_cycle_doc_generate + df_adr_generate (sampling)
99
100
  registerHandoffTools(server, toolOpts); // cycle12.2 — df_handoff + df_accept + df_rehydrate + df_handoffs (v2 Issue-anchor)
101
+ registerSkillsTools(server, toolOpts); // DFP #192 — df_skills_install + df_skills_list (consumer-shape skills)
100
102
  // step 4 — URI-addressable resources (df://repo/...). Single call
101
103
  // registers all 9 resources at once; see src/mcp/resources.ts.
102
104
  registerResources(server, toolOpts);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/doctor.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAWlE,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAChD;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,cAAc,CAI7E;AAoDD,oEAAoE;AACpE,wBAAsB,eAAe,CACnC,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,cAAc,CAAC,CA6DzB;AAkBD,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,IAAI,GAAE,yBAA8B,GACnC,IAAI,CA+EN"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/doctor.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAWlE,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAChD;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,cAAc,CAI7E;AAyDD,oEAAoE;AACpE,wBAAsB,eAAe,CACnC,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,cAAc,CAAC,CA6DzB;AAkBD,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,IAAI,GAAE,yBAA8B,GACnC,IAAI,CA+EN"}
@@ -61,6 +61,11 @@ const RUNDOCTOR_LOADER_CLASSES = [
61
61
  { id: "codex-sdk", modulePath: "../../adapters/codex-sdk.js", className: "CodexSdkAdapter" },
62
62
  { id: "gemini-sdk", modulePath: "../../adapters/gemini-sdk.js", className: "GeminiSdkAdapter" },
63
63
  { id: "grok-direct-sdk", modulePath: "../../adapters/grok-direct-sdk.js", className: "GrokDirectSdkAdapter" },
64
+ // Consumer DFP #107 — deterministic schema-lint adapter. Must mirror
65
+ // cli.ts ADAPTER_LOADERS so a critic config that names
66
+ // `static-schema-lint` does not emit a false `adapter_..._registered:
67
+ // false` check via the MCP doctor path.
68
+ { id: "static-schema-lint", modulePath: "../../adapters/static-schema-lint.js", className: "StaticSchemaLintAdapter" },
64
69
  ];
65
70
  async function buildAdapterRegistry() {
66
71
  // Mirror `src/cli.ts`'s `buildDefaultAdapterRegistry` shape — each