tamperward 2.39.20 → 2.39.22

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 (2) hide show
  1. package/dist/cli/index.js +11 -5
  2. package/package.json +1 -1
package/dist/cli/index.js CHANGED
@@ -20194,7 +20194,7 @@ function steeringUnavailableFinding(detail) {
20194
20194
  function failClosedResult(outcome, detail, phase, denyPayload) {
20195
20195
  const findings = [steeringUnavailableFinding(detail)];
20196
20196
  const wire = denyPayload(findings, phase);
20197
- return { outcome, detail, wire, decision: { verdict: "deny", findings, reason: wire } };
20197
+ return { outcome, detail, wire, unavailableReason: outcome, decision: { verdict: "deny", findings, reason: wire } };
20198
20198
  }
20199
20199
  var STEERING_PHASES, CONTRACT_TO_RESEARCH_LAYER, OPERATION_KINDS;
20200
20200
  var init_contract = __esm({
@@ -21524,7 +21524,13 @@ var init_adapter4 = __esm({
21524
21524
  }
21525
21525
  const swept = stopFromRaw(stopInput, defaultCwd, idv.trustedRoot);
21526
21526
  const findings = swept.findings ? [...swept.findings] : [];
21527
- return { outcome: "ok", wire: swept.stdout, decision: { verdict: swept.stdout ? "deny" : "allow", findings, reason: swept.stdout || void 0 } };
21527
+ const sweepFailedClosed = findings.some((f) => f.rule === "tamperward-unavailable");
21528
+ return {
21529
+ outcome: "ok",
21530
+ wire: swept.stdout,
21531
+ ...sweepFailedClosed ? { unavailableReason: "end-of-turn-sweep" } : {},
21532
+ decision: { verdict: swept.stdout ? "deny" : "allow", findings, reason: swept.stdout || void 0 }
21533
+ };
21528
21534
  }
21529
21535
  if (parsed.operation.kind === "unknown") {
21530
21536
  const detail = `unrecognized Copilot SDK permission request ${parsed.operation.name}; refusing to evaluate it as a no-op`;
@@ -21532,7 +21538,7 @@ var init_adapter4 = __esm({
21532
21538
  const wire = this.denyPayload(findings, "pre-action");
21533
21539
  return { outcome: "ok", wire, detail, decision: { verdict: "deny", findings, reason: wire } };
21534
21540
  }
21535
- let stage = "repo-context";
21541
+ let stage = "baseline";
21536
21542
  try {
21537
21543
  const root = idv.trustedRoot ?? repoRoot(defaultCwd ?? process.cwd());
21538
21544
  stage = "baseline";
@@ -21661,13 +21667,13 @@ var init_evidence = __esm({
21661
21667
  id: "pre-deny:shell",
21662
21668
  result: "proven",
21663
21669
  capture_path: "returned-reject",
21664
- detail: "returned-reject path (permission.completed result.kind denied): a rejected permission decision blocked shell tool dispatch \u2014 protected state not mutated (shell-pre-deny observation, boundary seq 2 < completion seq 3)"
21670
+ detail: "returned-reject path (frozen permission-gate signature: denied / 96ed60fc6898cdfa): a rejected permission decision blocked shell tool dispatch \u2014 protected state not mutated (shell-pre-deny observation, boundary seq 2 < completion seq 3)"
21665
21671
  },
21666
21672
  {
21667
21673
  id: "hook-not-invoked",
21668
21674
  result: "proven",
21669
21675
  capture_path: "callback-failure",
21670
- detail: "callback-failure path: a broken permission callback (sync-throw, reject and adapter-throw, independently) failed CLOSED \u2014 the tool did not dispatch and protected state stayed intact"
21676
+ detail: "callback-failure path (frozen permission-gate signature: denied / ebf2100b9c49ae12): a broken permission callback (sync-throw, reject and adapter-throw, independently) failed CLOSED \u2014 the tool did not dispatch and protected state stayed intact"
21671
21677
  },
21672
21678
  {
21673
21679
  id: "transport:timeout",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tamperward",
3
- "version": "2.39.20",
3
+ "version": "2.39.22",
4
4
  "description": "The deterministic agent-integrity gate. One ruleset, evaluated on the actual diff/commands as a verdict, enforced everywhere a change can be made.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "hexrift",