@farmslot/recipe-cli 0.22.5 → 0.23.1

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 (52) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/harness/acceptance-ledger.d.ts +1 -0
  3. package/dist/harness/acceptance-ledger.d.ts.map +1 -1
  4. package/dist/harness/acceptance-ledger.js +2 -1
  5. package/dist/harness/acceptance-ledger.js.map +1 -1
  6. package/dist/harness/artifact-validation.d.ts +23 -0
  7. package/dist/harness/artifact-validation.d.ts.map +1 -0
  8. package/dist/harness/artifact-validation.js +134 -0
  9. package/dist/harness/artifact-validation.js.map +1 -0
  10. package/dist/harness/commands/artifacts-markdown.d.ts +28 -0
  11. package/dist/harness/commands/artifacts-markdown.d.ts.map +1 -1
  12. package/dist/harness/commands/artifacts-markdown.js +125 -1
  13. package/dist/harness/commands/artifacts-markdown.js.map +1 -1
  14. package/dist/harness/commands/checklist.d.ts.map +1 -1
  15. package/dist/harness/commands/checklist.js +12 -0
  16. package/dist/harness/commands/checklist.js.map +1 -1
  17. package/dist/harness/commands/doctor.js +1 -1
  18. package/dist/harness/commands/doctor.js.map +1 -1
  19. package/dist/harness/commands/logs.d.ts +6 -0
  20. package/dist/harness/commands/logs.d.ts.map +1 -1
  21. package/dist/harness/commands/logs.js +28 -14
  22. package/dist/harness/commands/logs.js.map +1 -1
  23. package/dist/harness/commands/review.d.ts +48 -0
  24. package/dist/harness/commands/review.d.ts.map +1 -1
  25. package/dist/harness/commands/review.js +70 -34
  26. package/dist/harness/commands/review.js.map +1 -1
  27. package/dist/harness/commands/run.d.ts.map +1 -1
  28. package/dist/harness/commands/run.js +5 -0
  29. package/dist/harness/commands/run.js.map +1 -1
  30. package/dist/harness/commands/status.d.ts.map +1 -1
  31. package/dist/harness/commands/status.js +16 -15
  32. package/dist/harness/commands/status.js.map +1 -1
  33. package/dist/harness/index.d.ts +3 -2
  34. package/dist/harness/index.d.ts.map +1 -1
  35. package/dist/harness/index.js +2 -1
  36. package/dist/harness/index.js.map +1 -1
  37. package/dist/harness/parse-args.d.ts +9 -0
  38. package/dist/harness/parse-args.d.ts.map +1 -1
  39. package/dist/harness/parse-args.js +22 -20
  40. package/dist/harness/parse-args.js.map +1 -1
  41. package/dist/harness/readiness.d.ts +1 -0
  42. package/dist/harness/readiness.d.ts.map +1 -1
  43. package/dist/harness/readiness.js.map +1 -1
  44. package/dist/harness/repair-scope.d.ts +12 -0
  45. package/dist/harness/repair-scope.d.ts.map +1 -0
  46. package/dist/harness/repair-scope.js +41 -0
  47. package/dist/harness/repair-scope.js.map +1 -0
  48. package/dist/harness/run-engine.d.ts +2 -0
  49. package/dist/harness/run-engine.d.ts.map +1 -1
  50. package/dist/harness/run-engine.js +1 -0
  51. package/dist/harness/run-engine.js.map +1 -1
  52. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -6,6 +6,20 @@ All notable changes to `@farmslot/recipe-cli` are tracked here.
6
6
 
7
7
  - Active-development baseline; add user-facing changes here before release or package publication.
8
8
 
9
+ ## 0.23.1 - 2026-10-17
10
+
11
+ - `checklist mark` refuses an explicit `--checklist` (or the `--signal` given with it) that is not a task-local basename with exit 2 and the mark script's message, before reading either file or running `beforeComplete`. A `start` or numeric step used to exit 1.
12
+ - `logs` names the rejected value in its non-numeric `--events` refusal: `--events must be numeric (got: <value>).`
13
+
14
+ ## 0.23.0 - 2026-10-17
15
+
16
+ - Pass the task's active repair scope to the engine only for its separate repair recipe; the main task recipe ignores it.
17
+ - Export `renderRetainedArtifactsMarkdown` and `validateRecipeArtifactDirectory` from `./harness` so other host CLIs render and validate retained task Markdown with the root CLI's selection and refusals.
18
+ - Add `ReviewCommandOptions` hooks (`libraries`, `resolveLibrary`, `defaultDomain`, `domainCommand`, `usage`, `runtime`, `header`, `verdictRule`) and export `ReviewLibrary`, so host CLIs built with `createHarnessCli` route review and domain to the shared handler. A project binding ignores the hooks.
19
+ - Review resolves the domain before the runtime, prints one "Domain patterns" heading, names the domain source on stderr in human mode, words setup step 2 through the domain command, and refuses an owned-paths file with an empty domain.
20
+ - Add `LogsCommandOptions.announce`, called before a live follow outside `--json`. Logs now report an undetected or unknown adapter and a non-numeric `--events` through the usage envelope, check `--events` before the log file, and word the invalid-source, missing-file, headless and missing-console refusals generically.
21
+ - Doctor prints a failing recorder's detail on stderr; `ReadinessViewOptions.journal: false` leaves the command journal out of status.
22
+
9
23
  ## 0.22.5 - 2026-10-16
10
24
 
11
25
  - Align the worker dependency set with parent acceptance inheritance and Protocol 0.53.0.
@@ -12,5 +12,6 @@ export declare function recordRecipeAcceptance(taskDir: string, _target: string,
12
12
  tracePath: string;
13
13
  recipePath: string;
14
14
  claimsPath?: string;
15
+ selectedClaims?: RecipeClaimEvidence[];
15
16
  }): RecipeAcceptanceRecord;
16
17
  //# sourceMappingURL=acceptance-ledger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"acceptance-ledger.d.ts","sourceRoot":"","sources":["../../src/harness/acceptance-ledger.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EAEzB,MAAM,oBAAoB,CAAC;AAY5B,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,MAAM,GAAG,IAAI,CAgB/E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,sBAAsB,EAAE,GAAG,SAAS,CAI9F;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACrE,sBAAsB,CAexB"}
1
+ {"version":3,"file":"acceptance-ledger.d.ts","sourceRoot":"","sources":["../../src/harness/acceptance-ledger.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EAEzB,MAAM,oBAAoB,CAAC;AAY5B,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,MAAM,GAAG,IAAI,CAgB/E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,sBAAsB,EAAE,GAAG,SAAS,CAI9F;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IACN,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACxC,GACA,sBAAsB,CAgBxB"}
@@ -40,7 +40,8 @@ export function recordRecipeAcceptance(taskDir, _target, result) {
40
40
  const claims = JSON.parse(fs.readFileSync(result.claimsPath, 'utf8'));
41
41
  const root = path.dirname(result.claimsPath);
42
42
  const realTask = fs.realpathSync(taskDir);
43
- const criteria = claims.criteria.map((claim) => ({
43
+ // A repair transports the engine selection; retained rows keep their original verdicts.
44
+ const criteria = (result.selectedClaims ?? claims.criteria).map((claim) => ({
44
45
  ...claim,
45
46
  evidence: [
46
47
  ...new Set([result.tracePath, ...claim.evidence.map((file) => path.resolve(root, file))]),
@@ -1 +1 @@
1
- {"version":3,"file":"acceptance-ledger.js","sourceRoot":"","sources":["../../src/harness/acceptance-ledger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acceptance-ledger.js","sourceRoot":"","sources":["../../src/harness/acceptance-ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { type RecipeConformanceLiveEvidence, type RecipeValidationResult } from '@farmslot/protocol';
2
+ import { type RecordedEvidencePackageReadResult } from '@farmslot/recipe-runner';
3
+ export interface RecipeArtifactsValidateOptions {
4
+ recipe?: string;
5
+ requireRunnerProvenance?: boolean;
6
+ liveProof?: Pick<RecipeConformanceLiveEvidence, 'smokeTarget' | 'teardownTarget' | 'captureRequired' | 'hudRequired'>;
7
+ }
8
+ export interface ArtifactValidationCheck {
9
+ id: string;
10
+ status: 'pass' | 'fail';
11
+ message: string;
12
+ }
13
+ export interface ArtifactValidationResult {
14
+ status: 'pass' | 'fail';
15
+ artifactDir: string;
16
+ checks: ArtifactValidationCheck[];
17
+ recipe: RecipeValidationResult;
18
+ liveEvidence?: RecipeConformanceLiveEvidence;
19
+ warnings?: string[];
20
+ }
21
+ export declare function validateRecipeArtifactDirectory(artifactDirInput: string, opts: RecipeArtifactsValidateOptions): Promise<ArtifactValidationResult>;
22
+ export declare function validateRecipeArtifactRead(artifactDir: string, opts: RecipeArtifactsValidateOptions, loaded: RecordedEvidencePackageReadResult): Promise<ArtifactValidationResult>;
23
+ //# sourceMappingURL=artifact-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-validation.d.ts","sourceRoot":"","sources":["../../src/harness/artifact-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,KAAK,iCAAiC,EAEvC,MAAM,yBAAyB,CAAC;AAMjC,MAAM,WAAW,8BAA8B;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,SAAS,CAAC,EAAE,IAAI,CACd,6BAA6B,EAC7B,aAAa,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,CACrE,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,uBAAuB,EAAE,CAAC;IAClC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,YAAY,CAAC,EAAE,6BAA6B,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AA2DD,wBAAsB,+BAA+B,CACnD,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,8BAA8B,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAOnC;AAED,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,8BAA8B,EACpC,MAAM,EAAE,iCAAiC,GACxC,OAAO,CAAC,wBAAwB,CAAC,CA6InC"}
@@ -0,0 +1,134 @@
1
+ import { digestRecipeDocument, isRecord, } from '@farmslot/protocol';
2
+ import { readRecordedEvidencePackage, validateRecordedEvidencePackage, } from '@farmslot/recipe-runner';
3
+ import { readRecipeCliJsonFile, resolveRecipeCliPath } from '@farmslot/recipe-runner/cli/support';
4
+ import { runnerRevision } from './artifact-files.js';
5
+ import { validateRuntimeProof } from './runtime-proof.js';
6
+ const TERMINAL_RECIPE_STATUSES = new Set(['pass', 'fail', 'unknown']);
7
+ function addArtifactCheck(checks, id, status, message) {
8
+ checks.push({ id, status, message });
9
+ }
10
+ function hasSummaryRunnerProvenance(summary) {
11
+ return readRunnerProvenance(summary, 'runner') !== null;
12
+ }
13
+ function hasTraceRunnerProvenance(trace) {
14
+ return isRecord(trace) && readRunnerProvenance(trace.metadata, 'runner') !== null;
15
+ }
16
+ function hasManifestRunnerProvenance(manifest) {
17
+ return isRecord(manifest) && readRunnerProvenance(manifest.provenance, 'runner') !== null;
18
+ }
19
+ function readRunnerProvenance(parent, field) {
20
+ if (!isRecord(parent))
21
+ return null;
22
+ const runner = parent[field];
23
+ if (!isRecord(runner))
24
+ return null;
25
+ const source = runner.source;
26
+ const ref = runnerRevision(runner);
27
+ if (typeof source !== 'string' || source.trim() === '')
28
+ return null;
29
+ if (typeof ref !== 'string' || ref.trim() === '')
30
+ return null;
31
+ return runner;
32
+ }
33
+ function canonicalRunnerIdentity(runner) {
34
+ const source = runner.source;
35
+ const ref = runnerRevision(runner);
36
+ if (typeof source !== 'string' || source.trim() === '')
37
+ return null;
38
+ if (typeof ref !== 'string' || ref.trim() === '')
39
+ return null;
40
+ return JSON.stringify({ source: source.trim(), ref: ref.trim() });
41
+ }
42
+ function runnerProvenanceMatches(summary, trace, manifest) {
43
+ const summaryRunner = readRunnerProvenance(summary, 'runner');
44
+ const traceRunner = isRecord(trace) ? readRunnerProvenance(trace.metadata, 'runner') : null;
45
+ const manifestRunner = isRecord(manifest)
46
+ ? readRunnerProvenance(manifest.provenance, 'runner')
47
+ : null;
48
+ if (!summaryRunner || !traceRunner || !manifestRunner)
49
+ return false;
50
+ const canonical = canonicalRunnerIdentity(summaryRunner);
51
+ return (canonical !== null &&
52
+ canonicalRunnerIdentity(traceRunner) === canonical &&
53
+ canonicalRunnerIdentity(manifestRunner) === canonical);
54
+ }
55
+ export async function validateRecipeArtifactDirectory(artifactDirInput, opts) {
56
+ const artifactDir = resolveRecipeCliPath(artifactDirInput);
57
+ return validateRecipeArtifactRead(artifactDir, opts, await readRecordedEvidencePackage(artifactDir));
58
+ }
59
+ export async function validateRecipeArtifactRead(artifactDir, opts, loaded) {
60
+ const checks = loaded.checks;
61
+ const retained = loaded.input;
62
+ const { summary, trace, manifest, artifactDigests } = retained;
63
+ const artifactPaths = retained.artifactPaths ?? [];
64
+ // --recipe cross-checks the retained root; it cannot replace a recorded package's root.
65
+ const recipe = opts.recipe ? await readRecipeCliJsonFile(opts.recipe) : retained.recipe;
66
+ const bundle = { ...retained, recipe };
67
+ if (opts.recipe && retained.recipe !== undefined) {
68
+ addArtifactCheck(checks, 'recipe.matches_retained', digestRecipeDocument(recipe) === digestRecipeDocument(retained.recipe) ? 'pass' : 'fail', 'The supplied recipe must match the retained root recipe.');
69
+ }
70
+ const recorded = (isRecord(summary) && typeof summary.recipeRunId === 'string') ||
71
+ artifactPaths.includes('acceptance-status.json');
72
+ const recipeValidation = validateRecordedEvidencePackage({
73
+ ...bundle,
74
+ recipe: recorded ? retained.recipe : recipe,
75
+ });
76
+ let captures = [];
77
+ const warnings = [];
78
+ if (opts.liveProof) {
79
+ try {
80
+ captures = validateRuntimeProof(bundle, opts.liveProof.smokeTarget, opts.liveProof.teardownTarget, { ...opts.liveProof, hudRequired: false });
81
+ addArtifactCheck(checks, 'runtime.proof', 'pass', 'Runtime effect and authored teardown assertions passed.');
82
+ if (opts.liveProof.hudRequired) {
83
+ // The same immutable bundle already passed state, capture and cleanup checks.
84
+ // HUD observations are advisory; their absence cannot invalidate that proof.
85
+ try {
86
+ validateRuntimeProof(bundle, opts.liveProof.smokeTarget, opts.liveProof.teardownTarget, opts.liveProof);
87
+ }
88
+ catch (error) {
89
+ warnings.push(error instanceof Error ? error.message : String(error));
90
+ }
91
+ }
92
+ }
93
+ catch (error) {
94
+ addArtifactCheck(checks, 'runtime.proof', 'fail', error instanceof Error ? error.message : String(error));
95
+ }
96
+ }
97
+ const summaryStatus = isRecord(summary) ? summary.status : undefined;
98
+ addArtifactCheck(checks, 'summary.status', typeof summaryStatus === 'string' && TERMINAL_RECIPE_STATUSES.has(summaryStatus)
99
+ ? 'pass'
100
+ : 'fail', 'summary.json must include terminal status pass, fail, or unknown.');
101
+ addArtifactCheck(checks, 'trace.shape', Array.isArray(trace) || (isRecord(trace) && Array.isArray(trace.entries)) ? 'pass' : 'fail', 'trace.json must be an array or an object with entries[].');
102
+ const manifestStatus = isRecord(manifest) ? manifest.runStatus : undefined;
103
+ addArtifactCheck(checks, 'manifest.status_matches_summary', typeof summaryStatus === 'string' && manifestStatus === summaryStatus ? 'pass' : 'fail', 'artifact-manifest.json runStatus must match summary.json status.');
104
+ if (opts.requireRunnerProvenance) {
105
+ addArtifactCheck(checks, 'runner.provenance.summary', hasSummaryRunnerProvenance(summary) ? 'pass' : 'fail', 'summary.json must include runner provenance at summary.runner.');
106
+ addArtifactCheck(checks, 'runner.provenance.trace', hasTraceRunnerProvenance(trace) ? 'pass' : 'fail', 'trace.json must include runner provenance at trace.metadata.runner.');
107
+ addArtifactCheck(checks, 'runner.provenance.manifest', hasManifestRunnerProvenance(manifest) ? 'pass' : 'fail', 'artifact-manifest.json must include runner provenance at provenance.runner.');
108
+ addArtifactCheck(checks, 'runner.provenance.matches', runnerProvenanceMatches(summary, trace, manifest) ? 'pass' : 'fail', 'Runner provenance must identify the same source/ref in summary, trace metadata, and artifact manifest.');
109
+ }
110
+ const status = checks.some((check) => check.status === 'fail') || recipeValidation.status === 'invalid'
111
+ ? 'fail'
112
+ : 'pass';
113
+ const liveEvidence = status === 'pass' && opts.liveProof
114
+ ? {
115
+ ...opts.liveProof,
116
+ hudRequired: false,
117
+ ...(opts.liveProof.captureRequired || opts.liveProof.hudRequired ? { captures } : {}),
118
+ artifactDir,
119
+ artifacts: await Promise.all([...artifactPaths].sort().map(async (file) => ({
120
+ path: file,
121
+ digest: artifactDigests[file],
122
+ }))),
123
+ }
124
+ : undefined;
125
+ return {
126
+ status,
127
+ artifactDir,
128
+ checks,
129
+ recipe: recipeValidation,
130
+ ...(liveEvidence ? { liveEvidence } : {}),
131
+ ...(warnings.length ? { warnings } : {}),
132
+ };
133
+ }
134
+ //# sourceMappingURL=artifact-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-validation.js","sourceRoot":"","sources":["../../src/harness/artifact-validation.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type ArtifactValidationResult } from '../artifact-validation.js';
1
2
  export interface TaskArtifactsMarkdownInput {
2
3
  taskDir: string;
3
4
  /** Exact package already selected by the caller; never reselect an attempt here. */
@@ -18,7 +19,34 @@ export interface TaskArtifactsMarkdownResult {
18
19
  run: MarkdownArtifact | null;
19
20
  workflow: MarkdownArtifact | null;
20
21
  }
22
+ export interface RetainedArtifactsMarkdownInput {
23
+ /** Task or artifact package directory; without one, `candidates` are searched. */
24
+ directory?: string;
25
+ /** Evidence paths searched for a package when no directory is given. */
26
+ candidates?: readonly string[];
27
+ command?: string;
28
+ /** Refuses to overwrite authored inputs or retained evidence. */
29
+ out?: string;
30
+ validate?: boolean;
31
+ /** `text` selects and validates the package without rendering authored task Markdown. */
32
+ format?: 'markdown' | 'text';
33
+ }
34
+ export interface RetainedArtifactsMarkdownResult extends Partial<TaskArtifactsMarkdownResult> {
35
+ artifactDir?: string;
36
+ summary?: unknown;
37
+ manifest?: unknown;
38
+ validation?: ArtifactValidationResult;
39
+ out?: string;
40
+ }
21
41
  /** Render authored PR prose and existing evidence without executing or publishing it. */
22
42
  export declare function renderTaskArtifactsMarkdown(input: TaskArtifactsMarkdownInput): Promise<TaskArtifactsMarkdownResult>;
43
+ /**
44
+ * Select, validate and render a task's or artifact package's Markdown, writing it only to a
45
+ * safe `out`. `result` is the `recipe artifacts --json` document; `body` is the Markdown.
46
+ */
47
+ export declare function renderRetainedArtifactsMarkdown(input: RetainedArtifactsMarkdownInput): Promise<{
48
+ result: RetainedArtifactsMarkdownResult;
49
+ body: string;
50
+ }>;
23
51
  export {};
24
52
  //# sourceMappingURL=artifacts-markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts-markdown.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/artifacts-markdown.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,sBAAuB,SAAQ,gBAAgB;IACvD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC;AA6CD,yFAAyF;AACzF,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,2BAA2B,CAAC,CA8ItC"}
1
+ {"version":3,"file":"artifacts-markdown.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/artifacts-markdown.ts"],"names":[],"mappings":"AAcA,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,2BAA2B,CAAC;AAInC,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,sBAAuB,SAAQ,gBAAgB;IACvD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,8BAA8B;IAC7C,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,+BAAgC,SAAQ,OAAO,CAAC,2BAA2B,CAAC;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA6CD,yFAAyF;AACzF,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,2BAA2B,CAAC,CA8ItC;AAkED;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC;IAAE,MAAM,EAAE,+BAA+B,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAiFpE"}
@@ -1,6 +1,12 @@
1
+ import { existsSync, statSync } from 'node:fs';
1
2
  import path from 'node:path';
3
+ import { readRecipeAttemptSelection } from '@farmslot/agent-runtime/scripts/retained-recipe-attempt.cjs';
2
4
  import { isRecord } from '@farmslot/protocol';
3
- import { readContainedJsonArtifact, readContainedTextArtifact, runnerRevision, } from '../artifact-files.js';
5
+ import { readRecordedEvidencePackage } from '@farmslot/recipe-runner';
6
+ import { readRecipeCliJsonFileWithinRoot } from '@farmslot/recipe-runner/cli/support';
7
+ import { readContainedJsonArtifact, readContainedTextArtifact, runnerRevision, writeContainedArtifact, } from '../artifact-files.js';
8
+ import { validateRecipeArtifactRead, } from '../artifact-validation.js';
9
+ import { isPathWithin } from '../paths.js';
4
10
  import { countRecipeNodes } from '../run-engine.js';
5
11
  const RECIPE_HEADING = '## **Validation Recipe**';
6
12
  const LOGS_HEADING = '## **Validation Logs**';
@@ -171,4 +177,122 @@ export async function renderTaskArtifactsMarkdown(input) {
171
177
  workflow: workflow === undefined ? null : { path: 'artifacts/workflow.mmd' },
172
178
  };
173
179
  }
180
+ function artifactManifestPaths(manifest) {
181
+ const entries = isRecord(manifest) && Array.isArray(manifest.artifacts) ? manifest.artifacts : [];
182
+ return entries.flatMap((entry) => isRecord(entry) && typeof entry.path === 'string' ? [entry.path] : []);
183
+ }
184
+ function evidenceMarkdown(artifactDir, summary, artifactPaths) {
185
+ const literal = (value) => `<code>${escapeHtml(value)}</code>`;
186
+ return [
187
+ `Recipe evidence: ${literal(artifactDir)}`,
188
+ '',
189
+ `Result: ${literal(isRecord(summary) ? String(summary.status) : 'unknown')}`,
190
+ '',
191
+ ...artifactPaths.map((file) => `- ${literal(file)}`),
192
+ '',
193
+ ].join('\n');
194
+ }
195
+ async function writeArtifactsMarkdown(out, body, taskDir, artifactDir, artifactPaths) {
196
+ let parent = path.dirname(out);
197
+ while (!existsSync(parent))
198
+ parent = path.dirname(parent);
199
+ const destination = existsSync(out) ? statSync(out, { bigint: true }) : undefined;
200
+ const protectedPaths = [
201
+ ...(artifactDir
202
+ ? [...artifactPaths, 'report.md'].map((file) => path.resolve(artifactDir, file))
203
+ : []),
204
+ ...(taskDir
205
+ ? [
206
+ 'recipe-runs',
207
+ 'recipe-run',
208
+ 'recipe',
209
+ 'recipe.json',
210
+ 'workflow.mmd',
211
+ 'pr-description.md',
212
+ 'latest-valid-recipe-run.json',
213
+ ].map((file) => path.join(taskDir, 'artifacts', file))
214
+ : []),
215
+ ];
216
+ if (protectedPaths.some((file) => {
217
+ const input = destination && existsSync(file) ? statSync(file, { bigint: true }) : undefined;
218
+ return (out === path.resolve(file) ||
219
+ (input && destination && input.dev === destination.dev && input.ino === destination.ino) ||
220
+ isPathWithin(file, parent) ||
221
+ isPathWithin(file, out));
222
+ }))
223
+ throw new Error('--out must not overwrite authored inputs or retained recipe evidence.');
224
+ await writeContainedArtifact(path.dirname(out), path.basename(out), body, 'Markdown output');
225
+ }
226
+ /**
227
+ * Select, validate and render a task's or artifact package's Markdown, writing it only to a
228
+ * safe `out`. `result` is the `recipe artifacts --json` document; `body` is the Markdown.
229
+ */
230
+ export async function renderRetainedArtifactsMarkdown(input) {
231
+ const taskDir = input.directory ? path.resolve(input.directory) : undefined;
232
+ const selection = taskDir && !existsSync(path.join(taskDir, 'artifact-manifest.json'))
233
+ ? readRecipeAttemptSelection(taskDir)
234
+ : null;
235
+ const selectedDir = taskDir && selection
236
+ ? path.join(taskDir, 'artifacts', selection.relativeArtifactRoot)
237
+ : undefined;
238
+ if (taskDir && selectedDir && !isPathWithin(path.join(taskDir, 'artifacts'), selectedDir))
239
+ throw new Error('Selected recipe attempt is missing or resolves outside its root.');
240
+ const candidates = taskDir ? [taskDir] : (input.candidates ?? []);
241
+ const packages = selectedDir
242
+ ? [selectedDir]
243
+ : candidates
244
+ .flatMap((candidate) => [
245
+ candidate,
246
+ path.join(candidate, 'artifacts'),
247
+ path.join(candidate, 'artifacts/recipe'),
248
+ ])
249
+ .filter((candidate) => existsSync(path.join(candidate, 'artifact-manifest.json')));
250
+ const distinct = [...new Set(packages)];
251
+ const authoredTask = taskDir &&
252
+ input.format !== 'text' &&
253
+ !existsSync(path.join(taskDir, 'artifact-manifest.json')) &&
254
+ existsSync(path.join(taskDir, 'artifacts'));
255
+ if (distinct.length > 1 || (distinct.length === 0 && (!authoredTask || input.validate)))
256
+ throw new Error(distinct.length
257
+ ? `More than one artifact package matches; select a directory: ${distinct.join(', ')}`
258
+ : 'No retained artifact package found; pass its directory explicitly.');
259
+ const artifactDir = distinct[0];
260
+ const summary = artifactDir
261
+ ? await readRecipeCliJsonFileWithinRoot(artifactDir, 'summary.json')
262
+ : undefined;
263
+ const manifest = artifactDir
264
+ ? await readRecipeCliJsonFileWithinRoot(artifactDir, 'artifact-manifest.json')
265
+ : undefined;
266
+ const artifactPaths = artifactManifestPaths(manifest);
267
+ const retained = artifactDir && (input.validate || authoredTask || input.out)
268
+ ? await readRecordedEvidencePackage(artifactDir)
269
+ : undefined;
270
+ const checked = artifactDir && retained && (input.validate || authoredTask)
271
+ ? await validateRecipeArtifactRead(artifactDir, { requireRunnerProvenance: true }, retained)
272
+ : undefined;
273
+ if (authoredTask && checked?.status === 'fail')
274
+ throw new Error('Artifact validation failed; Markdown was not rendered or written.');
275
+ const validation = input.validate ? checked : undefined;
276
+ const markdown = authoredTask
277
+ ? await renderTaskArtifactsMarkdown({ taskDir, artifactDir, command: input.command })
278
+ : undefined;
279
+ const body = markdown?.body ?? (artifactDir ? evidenceMarkdown(artifactDir, summary, artifactPaths) : '');
280
+ const out = input.out ? path.resolve(input.out) : undefined;
281
+ if (out) {
282
+ if (validation?.status === 'fail' || retained?.checks.some((check) => check.status === 'fail'))
283
+ throw new Error('Artifact validation failed; Markdown was not written.');
284
+ await writeArtifactsMarkdown(out, body, authoredTask ? taskDir : undefined, artifactDir, retained?.input.artifactPaths ?? []);
285
+ }
286
+ return {
287
+ result: {
288
+ artifactDir,
289
+ summary,
290
+ manifest,
291
+ ...(validation ? { validation } : {}),
292
+ ...(markdown ? { ...markdown, ...(out ? { body: undefined } : {}) } : {}),
293
+ ...(out ? { out } : {}),
294
+ },
295
+ body,
296
+ };
297
+ }
174
298
  //# sourceMappingURL=artifacts-markdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts-markdown.js","sourceRoot":"","sources":["../../../src/harness/commands/artifacts-markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifacts-markdown.js","sourceRoot":"","sources":["../../../src/harness/commands/artifacts-markdown.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"checklist.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/checklist.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAgEtE,kFAAkF;AAClF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/C;AAED,MAAM,WAAW,uBAAuB;IAGtC,QAAQ,CAAC,CACP,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,SAAS,GAAG,MAAM,GAEvB,gBAAgB,CAAC,MAAM,CAAC,GACxB;QACE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IAEN,SAAS,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAEzC,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAyHD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,MAAM,CAAC,CA+DjB"}
1
+ {"version":3,"file":"checklist.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/checklist.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAgEtE,kFAAkF;AAClF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/C;AAED,MAAM,WAAW,uBAAuB;IAGtC,QAAQ,CAAC,CACP,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,SAAS,GAAG,MAAM,GAEvB,gBAAgB,CAAC,MAAM,CAAC,GACxB;QACE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IAEN,SAAS,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAEzC,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAyHD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,MAAM,CAAC,CA0EjB"}
@@ -148,6 +148,18 @@ export async function handleChecklist(argv, options = {}) {
148
148
  console.error(`usage: ${usage}`);
149
149
  return EXIT.usage;
150
150
  }
151
+ // An explicit --checklist (or the --signal given with it) that is not a
152
+ // task-local basename is a usage error, as the mark script reports it;
153
+ // refuse before any hook or file read. `sub` never reads the overrides.
154
+ if (targetOverrides.checklist && step !== 'sub') {
155
+ try {
156
+ resolveChecklistTargetWithOverrides(resolvedTaskDir, targetOverrides);
157
+ }
158
+ catch (error) {
159
+ console.error(error instanceof Error ? error.message : String(error));
160
+ return EXIT.usage;
161
+ }
162
+ }
151
163
  if (preserveTerminalSignal(resolvedTaskDir, step, targetOverrides))
152
164
  return EXIT.ok;
153
165
  const gates = options.stepGates ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"checklist.js","sourceRoot":"","sources":["../../../src/harness/commands/checklist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checklist.js","sourceRoot":"","sources":["../../../src/harness/commands/checklist.ts"],"names":[],"mappings":"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"}
@@ -484,7 +484,7 @@ function emitExpectLiveVerdict(adapter, target, runtime, verdict, recorder) {
484
484
  for (const reason of runtime?.reasons ?? [])
485
485
  console.error(` ${out('dim', reason)}`);
486
486
  if (recorder?.status === 'fail') {
487
- console.error(` ${out('err', 'recorder:')} ${recorder.message}`);
487
+ console.error(` ${out('err', 'recorder:')} ${recorder.message}${recorder.detail ? ` ${out('dim', recorder.detail)}` : ''}`);
488
488
  if (recorder.userAction)
489
489
  console.error(` Next: ${recorder.userAction}`);
490
490
  return;