@deeeed/metamask-harness 0.61.0 → 0.61.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.61.1 - 2026-09-21
6
+
7
+ ### Fixed
8
+
9
+ - Preserve explicitly typed public signer-key indices in recipe plans while redacting credentials. Adopt `@farmslot/recipe-harness@0.18.1` invocation evidence so parameterized run artifacts validate without reconstructing inputs.
10
+
5
11
  ## 0.61.0 - 2026-09-20
6
12
 
7
13
  ### Added
@@ -1,6 +1,6 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
- import { walletFixturePath } from "../paths.js";
3
+ import { importRecipeHarness, walletFixturePath } from "../paths.js";
4
4
  import { color } from "../cli-color.js";
5
5
  import { recipeRunning } from "../heal-bounds.js";
6
6
  import { checkoutBusyOut, EXIT, usageOut, writeInteractiveProgress } from "./shared.js";
@@ -39,7 +39,7 @@ import { JsonStreamWriter } from "../json-stream.js";
39
39
  import { formatRunDiagnosticsForHuman, readRunDiagnosticsDocument } from "../run-diagnostics.js";
40
40
  import { recipeTrustFailure } from "../recipe-security.js";
41
41
  import { ProvenanceDriftError } from "../execution-provenance.js";
42
- import { recordCommandEvidence, redactStructuredValue } from "../command-journal.js";
42
+ import { recordCommandEvidence } from "../command-journal.js";
43
43
  import {
44
44
  actionLibraryContextArgs,
45
45
  missingActionCapabilities,
@@ -640,6 +640,7 @@ async function handleRunPlan(recipeArg, params, options, stream) {
640
640
  detail: nodeCount === void 0 ? "would execute the recipe nodes" : `would execute ${nodeCount} recipe node(s)`
641
641
  }
642
642
  ];
643
+ const { redactRecipeParams } = await importRecipeHarness();
643
644
  const payload = {
644
645
  schemaVersion: 1,
645
646
  command: "run",
@@ -647,7 +648,7 @@ async function handleRunPlan(recipeArg, params, options, stream) {
647
648
  status,
648
649
  adapter,
649
650
  recipe: recipeFile,
650
- params: redactStructuredValue(effectiveParams),
651
+ params: redactRecipeParams(effectiveParams, isRecord(recipe) ? recipe.paramsSchema : void 0).params,
651
652
  findings,
652
653
  plan
653
654
  };
package/docs/RECIPES.md CHANGED
@@ -488,3 +488,12 @@ mm-harness run --list --json
488
488
  ```
489
489
 
490
490
  See [Security](SECURITY.md) before enabling custom executable actions.
491
+
492
+ ### Packaging parameterized runs
493
+
494
+ New runs retain `recipe-invocation.json` alongside their original recipe and
495
+ resolved dependencies. The canonical validator reads those execution-bound
496
+ inputs when validating the artifact directory, so Pretty PR does not need to
497
+ reconstruct parameters from logs or a later plan. Keep the invocation artifact
498
+ and its manifest entry when copying a run. Redacted credential inputs cannot be
499
+ revalidated; pass fixture references instead of credentials.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deeeed/metamask-harness",
3
- "version": "0.61.0",
3
+ "version": "0.61.1",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "mm-harness": "bin/mm-harness"
@@ -24,7 +24,7 @@
24
24
  "@farmslot/expo-recipe": "0.11.0",
25
25
  "@farmslot/handoff": "^0.3.1",
26
26
  "@farmslot/protocol": "0.30.0",
27
- "@farmslot/recipe-harness": "0.18.0",
27
+ "@farmslot/recipe-harness": "0.18.1",
28
28
  "agent-device": "0.19.3",
29
29
  "commander": "^12.0.0",
30
30
  "es-module-lexer": "2.3.1",