@deeeed/metamask-harness 0.91.6 → 0.91.7

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/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.91.7 - 2026-10-13
6
+
7
+ ### Changed
8
+
9
+ - Use the coordinated Farmslot recipe closure for fresh task attempt directories, selected-package checks and declared output provenance. Reusing a retained `--artifacts-dir` refuses and preserves its evidence.
10
+
11
+ ### Fixed
12
+
13
+ - Render PR validation logs from the selected retained attempt, including when an older legacy report remains.
14
+
5
15
  ## 0.91.6 - 2026-10-13
6
16
 
7
17
  ### Fixed
@@ -779,7 +779,7 @@ Common overrides:
779
779
  --adapter <{adapters}> Target adapter (auto-detected inside a checkout)
780
780
  --platform <ios|android> Mobile platform preference; use --adapter for the product adapter
781
781
  --target <path> Checkout path (default: cwd)
782
- --artifacts-dir <dir> Override evidence output (default: active task/artifacts, otherwise a checkout-local temp/recipe/runs/<run>)
782
+ --artifacts-dir <dir> Fresh evidence output (default: active task/artifacts/recipe-runs/<attempt>, otherwise checkout-local temp/recipe/runs/<run>); retained packages cannot be reused
783
783
  --funding-request <absolute-file> Original consented mutation request for external-mutation actions
784
784
  --funding-preflight <absolute-file> Eligible funding preflight bound to the request bytes
785
785
  --funding-release-proof <absolute-file> Exact release proof independently bound to funding eligibility
@@ -1,5 +1,9 @@
1
1
  import fs from "node:fs";
2
+ import { createRequire } from "node:module";
2
3
  import path from "node:path";
4
+ const { readRecipeAttemptSelection } = createRequire(import.meta.url)(
5
+ "@farmslot/agent-runtime/scripts/retained-recipe-attempt.cjs"
6
+ );
3
7
  const PROSE_FILE = "pr-description.md";
4
8
  const BODY_FILE = "pr-body.md";
5
9
  const RECIPE_HEADING = "## **Validation Recipe**";
@@ -77,7 +81,9 @@ function renderPrBody(input) {
77
81
  throw new Error(`Missing ${path.relative(input.taskDir, prosePath)}: write the PR description there first.`);
78
82
  }
79
83
  const recipePath = path.join(artifacts, "recipe.json");
80
- const reportPath = path.join(artifacts, "recipe-run", "report.md");
84
+ const selected = readRecipeAttemptSelection(input.taskDir);
85
+ const reportRoot = selected?.relativeArtifactRoot ?? "recipe-run";
86
+ const reportPath = path.join(artifacts, reportRoot, "report.md");
81
87
  const workflowPath = path.join(artifacts, "workflow.mmd");
82
88
  const machine = [];
83
89
  let recipe = null;
@@ -91,7 +97,7 @@ function renderPrBody(input) {
91
97
  const hasReport = fs.existsSync(reportPath);
92
98
  machine.push([
93
99
  LOGS_HEADING,
94
- hasReport ? logsSection(reportPath, input.command) : "Not applicable: no recipe run report under `artifacts/recipe-run/`."
100
+ hasReport ? logsSection(reportPath, input.command) : `Not applicable: no recipe run report under \`artifacts/${reportRoot}/\`.`
95
101
  ]);
96
102
  const hasWorkflow = fs.existsSync(workflowPath);
97
103
  if (hasWorkflow) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deeeed/metamask-harness",
3
- "version": "0.91.6",
3
+ "version": "0.91.7",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "mm-harness": "bin/mm-harness"
@@ -21,15 +21,15 @@
21
21
  "check:syntax": "find . -name '*.mjs' -print0 | xargs -0 -n1 node --check"
22
22
  },
23
23
  "dependencies": {
24
- "@farmslot/adapter-node": "0.1.14",
25
- "@farmslot/adapter-rn": "0.20.1",
26
- "@farmslot/adapter-sdk": "0.9.1",
27
- "@farmslot/adapter-web": "0.7.2",
28
- "@farmslot/agent-runtime": "0.18.1",
24
+ "@farmslot/adapter-node": "0.1.15",
25
+ "@farmslot/adapter-rn": "0.21.0",
26
+ "@farmslot/adapter-sdk": "0.10.0",
27
+ "@farmslot/adapter-web": "0.8.0",
28
+ "@farmslot/agent-runtime": "0.19.0",
29
29
  "@farmslot/handoff": "^0.3.1",
30
- "@farmslot/protocol": "0.40.0",
31
- "@farmslot/recipe-cli": "0.14.3",
32
- "@farmslot/recipe-runner": "0.31.0",
30
+ "@farmslot/protocol": "0.41.0",
31
+ "@farmslot/recipe-cli": "0.15.0",
32
+ "@farmslot/recipe-runner": "0.32.0",
33
33
  "agent-device": "0.19.3",
34
34
  "commander": "^12.0.0",
35
35
  "esbuild": "0.28.1",