@riddledc/riddle-proof 0.8.54 → 0.8.56

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 (68) hide show
  1. package/dist/adapters/codex-exec-agent.js +2 -2
  2. package/dist/adapters/codex.js +2 -2
  3. package/dist/adapters/local-agent.js +2 -2
  4. package/dist/adapters/openclaw.js +5 -5
  5. package/dist/advanced/engine-harness.cjs +129 -22
  6. package/dist/advanced/engine-harness.js +5 -5
  7. package/dist/advanced/index.cjs +130 -23
  8. package/dist/advanced/index.d.cts +1 -1
  9. package/dist/advanced/index.d.ts +1 -1
  10. package/dist/advanced/index.js +6 -6
  11. package/dist/advanced/proof-run-engine.d.cts +1 -1
  12. package/dist/advanced/proof-run-engine.d.ts +1 -1
  13. package/dist/advanced/runner.cjs +59 -1
  14. package/dist/advanced/runner.js +5 -5
  15. package/dist/checkpoint.cjs +4 -0
  16. package/dist/checkpoint.js +2 -2
  17. package/dist/{chunk-ECLGGGAI.js → chunk-54DIEDR3.js} +3 -3
  18. package/dist/{chunk-VY4Y5U57.js → chunk-CUBYSWZT.js} +57 -0
  19. package/dist/{chunk-IV4DVWPR.js → chunk-GHBNDHG7.js} +67 -25
  20. package/dist/{chunk-S5DX7Z6X.js → chunk-JLOZTVXU.js} +3 -3
  21. package/dist/{chunk-JJ4IWRMJ.js → chunk-KNPCWWF3.js} +8 -3
  22. package/dist/{chunk-BLM5EIBA.js → chunk-MOTQNIZX.js} +5 -1
  23. package/dist/{chunk-73EBR3YL.js → chunk-RS4HJLJQ.js} +1 -1
  24. package/dist/{chunk-LNWJAHAQ.js → chunk-TTB3ZAVX.js} +2 -2
  25. package/dist/{chunk-WDIKPIMB.js → chunk-UZIX7M7D.js} +11 -4
  26. package/dist/cli/index.js +7 -7
  27. package/dist/cli.cjs +129 -22
  28. package/dist/cli.js +7 -7
  29. package/dist/codex-exec-agent.js +2 -2
  30. package/dist/engine-harness.cjs +129 -22
  31. package/dist/engine-harness.js +5 -5
  32. package/dist/index.cjs +136 -23
  33. package/dist/index.d.cts +1 -1
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +14 -8
  36. package/dist/local-agent.js +2 -2
  37. package/dist/openclaw.js +5 -5
  38. package/dist/{proof-run-engine-MiKZt9oY.d.ts → proof-run-engine-BqRoA3Do.d.ts} +3 -3
  39. package/dist/{proof-run-engine-Baiv6l3A.d.cts → proof-run-engine-DpChFR5H.d.cts} +3 -3
  40. package/dist/proof-run-engine.d.cts +1 -1
  41. package/dist/proof-run-engine.d.ts +1 -1
  42. package/dist/result.cjs +62 -2
  43. package/dist/result.d.cts +17 -2
  44. package/dist/result.d.ts +17 -2
  45. package/dist/result.js +9 -3
  46. package/dist/run-card.cjs +43 -0
  47. package/dist/run-card.js +3 -3
  48. package/dist/runner.cjs +59 -1
  49. package/dist/runner.js +5 -5
  50. package/dist/spec/checkpoint.cjs +4 -0
  51. package/dist/spec/checkpoint.js +2 -2
  52. package/dist/spec/index.cjs +74 -1
  53. package/dist/spec/index.d.cts +1 -1
  54. package/dist/spec/index.d.ts +1 -1
  55. package/dist/spec/index.js +11 -5
  56. package/dist/spec/result.cjs +62 -2
  57. package/dist/spec/result.d.cts +1 -1
  58. package/dist/spec/result.d.ts +1 -1
  59. package/dist/spec/result.js +9 -3
  60. package/dist/spec/run-card.cjs +43 -0
  61. package/dist/spec/run-card.js +3 -3
  62. package/dist/spec/state.cjs +52 -1
  63. package/dist/spec/state.js +4 -4
  64. package/dist/state.cjs +52 -1
  65. package/dist/state.js +4 -4
  66. package/dist/types.d.cts +17 -0
  67. package/dist/types.d.ts +17 -0
  68. package/package.json +1 -1
package/dist/cli.cjs CHANGED
@@ -3419,6 +3419,9 @@ var import_node_crypto3 = __toESM(require("crypto"), 1);
3419
3419
  function isTerminalStatus(status) {
3420
3420
  return status === "blocked" || status === "failed" || status === "ready_to_ship" || status === "shipped" || status === "completed";
3421
3421
  }
3422
+ function isProtectedFinalStatus(status) {
3423
+ return status === "ready_to_ship" || status === "shipped" || status === "completed";
3424
+ }
3422
3425
  function isSuccessfulStatus(status) {
3423
3426
  return status !== "blocked" && status !== "failed";
3424
3427
  }
@@ -3516,6 +3519,9 @@ function normalizeTerminalMetadata(input) {
3516
3519
  pr_state: prState,
3517
3520
  marked_ready: markedReady,
3518
3521
  left_draft: leftDraft,
3522
+ ship_held: firstBoolean(riddleState.ship_held, result.ship_held, result.shipHeld, details.ship_held, details.shipHeld, shipReport.ship_held, shipReport.shipHeld),
3523
+ shipping_disabled: firstBoolean(riddleState.shipping_disabled, result.shipping_disabled, result.shippingDisabled, details.shipping_disabled, details.shippingDisabled, shipReport.shipping_disabled, shipReport.shippingDisabled),
3524
+ ship_authorized: firstBoolean(riddleState.ship_authorized, result.ship_authorized, result.shipAuthorized, details.ship_authorized, details.shipAuthorized, shipReport.ship_authorized, shipReport.shipAuthorized),
3519
3525
  ci_status: firstNonEmptyString(riddleState.ci_status, result.ci_status, result.ciStatus, details.ci_status, details.ciStatus, shipReport.ci_status),
3520
3526
  ship_commit: firstNonEmptyString(riddleState.ship_commit, result.ship_commit, result.shipCommit, details.ship_commit, details.shipCommit, shipReport.shipped_commit, shipReport.ship_commit),
3521
3527
  ship_remote_head: firstNonEmptyString(riddleState.ship_remote_head, result.ship_remote_head, result.shipRemoteHead, details.ship_remote_head, details.shipRemoteHead, shipReport.ship_remote_head),
@@ -3549,6 +3555,9 @@ function applyTerminalMetadata(state, metadata) {
3549
3555
  if (prBranch) state.pr_branch = prBranch;
3550
3556
  if (typeof metadata.marked_ready === "boolean") state.marked_ready = metadata.marked_ready;
3551
3557
  if (typeof metadata.left_draft === "boolean") state.left_draft = metadata.left_draft;
3558
+ if (typeof metadata.ship_held === "boolean") state.ship_held = metadata.ship_held;
3559
+ if (typeof metadata.shipping_disabled === "boolean") state.shipping_disabled = metadata.shipping_disabled;
3560
+ if (typeof metadata.ship_authorized === "boolean") state.ship_authorized = metadata.ship_authorized;
3552
3561
  const ciStatus = nonEmptyString(metadata.ci_status);
3553
3562
  if (ciStatus) state.ci_status = ciStatus;
3554
3563
  const shipCommit = nonEmptyString(metadata.ship_commit);
@@ -3580,12 +3589,54 @@ function applyTerminalMetadata(state, metadata) {
3580
3589
  if (typeof metadata.finalized === "boolean") state.finalized = metadata.finalized;
3581
3590
  return state;
3582
3591
  }
3592
+ function shipControlStateFor(input) {
3593
+ const state = input.state;
3594
+ const status = input.status || state.status;
3595
+ const raw = recordValue(input.raw) || {};
3596
+ const shipReport = recordValue(state.ship_report) || {};
3597
+ const prState = recordValue(state.pr_state) || {};
3598
+ const shippingDisabled = firstBoolean(
3599
+ raw.shipping_disabled,
3600
+ raw.shippingDisabled,
3601
+ state.shipping_disabled,
3602
+ shipReport.shipping_disabled,
3603
+ shipReport.shippingDisabled
3604
+ ) ?? state.request?.ship_mode === "none";
3605
+ const explicitAuthorized = firstBoolean(
3606
+ raw.ship_authorized,
3607
+ raw.shipAuthorized,
3608
+ state.ship_authorized,
3609
+ shipReport.ship_authorized,
3610
+ shipReport.shipAuthorized
3611
+ );
3612
+ const authorizationEvidence = Boolean(
3613
+ status === "shipped" || state.marked_ready === true || shipReport.marked_ready === true || prState.status === "merged" || state.merge_commit || state.merged_at
3614
+ );
3615
+ const inferredAuthorized = explicitAuthorized ?? authorizationEvidence;
3616
+ const rawHeld = firstBoolean(raw.ship_held, raw.shipHeld);
3617
+ const inferredHeld = status === "ready_to_ship" && shippingDisabled && !inferredAuthorized;
3618
+ const shipHeld = rawHeld ?? (state.ship_held === true || inferredHeld);
3619
+ return {
3620
+ ship_held: shipHeld,
3621
+ shipping_disabled: shippingDisabled,
3622
+ ship_authorized: shipHeld ? false : inferredAuthorized
3623
+ };
3624
+ }
3625
+ function applyShipControlState(state, input = {}) {
3626
+ const control = shipControlStateFor({ state, status: input.status, raw: input.raw });
3627
+ state.ship_held = control.ship_held;
3628
+ state.shipping_disabled = control.shipping_disabled;
3629
+ state.ship_authorized = control.ship_authorized;
3630
+ return state;
3631
+ }
3583
3632
  function createRunResult(input) {
3584
3633
  const status = input.status || input.state.status;
3585
3634
  const ok = isSuccessfulStatus(status);
3586
3635
  const state = input.metadata ? applyTerminalMetadata(input.state, input.metadata) : input.state;
3587
3636
  state.status = status;
3588
3637
  state.ok = ok;
3638
+ if (isProtectedFinalStatus(status)) state.finalized = true;
3639
+ applyShipControlState(state, { status, raw: input.raw });
3589
3640
  return compactRecord({
3590
3641
  ok,
3591
3642
  status,
@@ -3603,6 +3654,9 @@ function createRunResult(input) {
3603
3654
  pr_state: state.pr_state,
3604
3655
  marked_ready: state.marked_ready,
3605
3656
  left_draft: state.left_draft,
3657
+ ship_held: state.ship_held,
3658
+ shipping_disabled: state.shipping_disabled,
3659
+ ship_authorized: state.ship_authorized,
3606
3660
  ci_status: state.ci_status,
3607
3661
  ship_commit: state.ship_commit,
3608
3662
  ship_remote_head: state.ship_remote_head,
@@ -4329,6 +4383,8 @@ function checkpointSummaryFromState(state, engineStatePath2) {
4329
4383
  const packets = history.filter((entry) => entry.packet);
4330
4384
  const responses = acceptedCheckpointResponseEntries(state);
4331
4385
  const duplicateResponses = events.filter((event) => event.kind === "checkpoint.response.duplicate");
4386
+ const rejectedResponses = events.filter((event) => event.kind === "checkpoint.response.rejected");
4387
+ const ignoredResponses = events.filter((event) => event.kind === "checkpoint.response.ignored");
4332
4388
  const latestPacketEntry = [...history].reverse().find((entry) => entry.packet);
4333
4389
  const latestResponseEntry = [...responses].reverse().find((entry) => entry.response);
4334
4390
  const latestPacket = state.checkpoint_packet || latestPacketEntry?.packet;
@@ -4344,6 +4400,8 @@ function checkpointSummaryFromState(state, engineStatePath2) {
4344
4400
  packet_count: packets.length,
4345
4401
  response_count: responses.length,
4346
4402
  duplicate_response_count: duplicateResponses.length,
4403
+ rejected_response_count: rejectedResponses.length,
4404
+ ignored_response_count: ignoredResponses.length,
4347
4405
  latest_checkpoint: state.checkpoint_packet?.checkpoint || latestResponse?.checkpoint || state.last_checkpoint || null,
4348
4406
  latest_stage: state.checkpoint_packet?.stage || latestResponse?.continue_with_stage || state.current_stage || null,
4349
4407
  latest_kind: state.checkpoint_packet?.kind || latestPacket?.kind || null,
@@ -4582,6 +4640,7 @@ function createRiddleProofRunCard(state, input = {}) {
4582
4640
  const visualDelta = visualDeltaFrom({ fullRiddleState: fullState, runState: state });
4583
4641
  const artifacts = artifactsFrom({ fullRiddleState: fullState, runState: state });
4584
4642
  const viewportMatrix = viewportMatrixFrom({ fullRiddleState: fullState, runState: state });
4643
+ const shipControl = shipControlStateFor({ state });
4585
4644
  return {
4586
4645
  version: RIDDLE_PROOF_RUN_CARD_VERSION,
4587
4646
  run_id: state.run_id || "unknown",
@@ -4635,6 +4694,9 @@ function createRiddleProofRunCard(state, input = {}) {
4635
4694
  stop_condition: compactRecord({
4636
4695
  status: state.status,
4637
4696
  terminal: isTerminalStatus(state.status),
4697
+ ship_held: shipControl.ship_held,
4698
+ shipping_disabled: shipControl.shipping_disabled,
4699
+ ship_authorized: shipControl.ship_authorized,
4638
4700
  blocker_code: state.blocker?.code || null,
4639
4701
  blocker_message: state.blocker?.message || null,
4640
4702
  proof_decision: state.proof_decision,
@@ -4795,7 +4857,8 @@ function appendStageHeartbeat(state, input) {
4795
4857
  function createRunStatusSnapshot(state, at = timestamp2()) {
4796
4858
  const latestEvent = state.events[state.events.length - 1];
4797
4859
  const runId = state.run_id || "unknown";
4798
- const existingRunCardCurrent = state.run_card?.status === state.status && state.run_card.stop_condition?.status === state.status && state.run_card.stop_condition?.terminal === isTerminalStatus(state.status) && state.run_card.stop_condition?.monitor_should_continue === !isTerminalStatus(state.status);
4860
+ const shipControl = shipControlStateFor({ state });
4861
+ const existingRunCardCurrent = state.run_card?.status === state.status && state.run_card.stop_condition?.status === state.status && state.run_card.stop_condition?.terminal === isTerminalStatus(state.status) && state.run_card.stop_condition?.monitor_should_continue === !isTerminalStatus(state.status) && state.run_card.stop_condition?.ship_held === shipControl.ship_held && state.run_card.stop_condition?.shipping_disabled === shipControl.shipping_disabled && state.run_card.stop_condition?.ship_authorized === shipControl.ship_authorized;
4799
4862
  const runCard = existingRunCardCurrent ? state.run_card : createRiddleProofRunCard(state, { at });
4800
4863
  return compactRecord({
4801
4864
  run_id: runId,
@@ -4809,6 +4872,9 @@ function createRunStatusSnapshot(state, at = timestamp2()) {
4809
4872
  pr_url: state.pr_url ?? null,
4810
4873
  pr_branch: state.pr_branch ?? null,
4811
4874
  pr_state: state.pr_state,
4875
+ ship_held: shipControl.ship_held,
4876
+ shipping_disabled: shipControl.shipping_disabled,
4877
+ ship_authorized: shipControl.ship_authorized,
4812
4878
  ci_status: state.ci_status,
4813
4879
  ship_commit: state.ship_commit,
4814
4880
  ship_remote_head: state.ship_remote_head,
@@ -4834,6 +4900,7 @@ function createRunStatusSnapshot(state, at = timestamp2()) {
4834
4900
  function setRunStatus(state, status, at = timestamp2()) {
4835
4901
  state.status = status;
4836
4902
  state.ok = status !== "blocked" && status !== "failed";
4903
+ if (isProtectedFinalStatus(status)) state.finalized = true;
4837
4904
  state.updated_at = at;
4838
4905
  return state;
4839
4906
  }
@@ -4902,9 +4969,6 @@ function loadRunState(input) {
4902
4969
  state_path: statePath
4903
4970
  });
4904
4971
  }
4905
- function isProtectedFinalStatus(status) {
4906
- return status === "ready_to_ship" || status === "shipped" || status === "completed";
4907
- }
4908
4972
  function shouldPreserveFinalizedRunState(filePath, incoming) {
4909
4973
  const existing = readJson(filePath);
4910
4974
  if (!existing?.finalized || !isProtectedFinalStatus(existing.status)) return false;
@@ -5095,7 +5159,7 @@ function shipHeldTerminal(state, result) {
5095
5159
  "ready_to_ship",
5096
5160
  result,
5097
5161
  result.summary || "Riddle Proof evidence is approved, but ship_mode=none is holding before PR/ship.",
5098
- { ship_held: true }
5162
+ { ship_held: true, shipping_disabled: true, ship_authorized: false }
5099
5163
  );
5100
5164
  }
5101
5165
  function checkpointContinueStage2(result) {
@@ -5373,6 +5437,7 @@ function terminalResult(state, status, result, summary, raw = {}) {
5373
5437
  engineResult: result
5374
5438
  });
5375
5439
  applyTerminalMetadata(state, metadata);
5440
+ applyShipControlState(state, { status, raw });
5376
5441
  persist(state);
5377
5442
  return createRunResult({
5378
5443
  state,
@@ -5475,19 +5540,38 @@ function appendCheckpointResponse(state, response, input = {}) {
5475
5540
  setRunStatus(state, "running", at);
5476
5541
  persist(state);
5477
5542
  }
5543
+ function checkpointResponseRejectedBlocker(state, input) {
5544
+ const packet = input.packet || null;
5545
+ const response = input.response || null;
5546
+ appendRunEvent(state, {
5547
+ kind: "checkpoint.response.rejected",
5548
+ checkpoint: response?.checkpoint || packet?.checkpoint || input.blocker.checkpoint || null,
5549
+ stage: packet?.stage || state.current_stage || "author",
5550
+ summary: input.blocker.message,
5551
+ details: compactRecord({
5552
+ code: input.blocker.code,
5553
+ decision: response?.decision,
5554
+ resume_token: response?.resume_token,
5555
+ packet_id: response?.packet_id,
5556
+ source: response?.source
5557
+ })
5558
+ });
5559
+ return { blocker: input.blocker };
5560
+ }
5478
5561
  function checkpointResponseContinuation(state, value) {
5479
5562
  if (!value) return {};
5480
5563
  const packet = state.checkpoint_packet;
5481
5564
  const response = normalizeCheckpointResponse(value);
5482
5565
  if (!response) {
5483
- return {
5566
+ return checkpointResponseRejectedBlocker(state, {
5567
+ packet,
5484
5568
  blocker: {
5485
5569
  code: "checkpoint_response_invalid",
5486
5570
  checkpoint: packet?.checkpoint || state.last_checkpoint || null,
5487
5571
  message: "Checkpoint response was not a valid riddle-proof.checkpoint_response.v1 object.",
5488
5572
  details: { checkpoint_packet: packet || null, checkpoint_summary: checkpointSummaryFromState(state) }
5489
5573
  }
5490
- };
5574
+ });
5491
5575
  }
5492
5576
  if (isDuplicateCheckpointResponse(state, response)) {
5493
5577
  const stage = packet?.stage || state.current_stage || "author";
@@ -5518,17 +5602,20 @@ function checkpointResponseContinuation(state, value) {
5518
5602
  };
5519
5603
  }
5520
5604
  if (!packet) {
5521
- return {
5605
+ return checkpointResponseRejectedBlocker(state, {
5606
+ response,
5522
5607
  blocker: {
5523
5608
  code: "checkpoint_response_without_packet",
5524
5609
  checkpoint: response.checkpoint,
5525
5610
  message: "A checkpoint response was supplied, but the run state has no pending checkpoint packet.",
5526
5611
  details: { response, checkpoint_summary: checkpointSummaryFromState(state) }
5527
5612
  }
5528
- };
5613
+ });
5529
5614
  }
5530
5615
  if (response.run_id !== packet.run_id || response.checkpoint !== packet.checkpoint) {
5531
- return {
5616
+ return checkpointResponseRejectedBlocker(state, {
5617
+ packet,
5618
+ response,
5532
5619
  blocker: {
5533
5620
  code: "checkpoint_response_mismatch",
5534
5621
  checkpoint: packet.checkpoint,
@@ -5539,10 +5626,12 @@ function checkpointResponseContinuation(state, value) {
5539
5626
  actual: { run_id: response.run_id, checkpoint: response.checkpoint }
5540
5627
  }
5541
5628
  }
5542
- };
5629
+ });
5543
5630
  }
5544
5631
  if (packet.resume_token && response.resume_token !== packet.resume_token) {
5545
- return {
5632
+ return checkpointResponseRejectedBlocker(state, {
5633
+ packet,
5634
+ response,
5546
5635
  blocker: {
5547
5636
  code: "checkpoint_response_resume_token_mismatch",
5548
5637
  checkpoint: packet.checkpoint,
@@ -5553,10 +5642,12 @@ function checkpointResponseContinuation(state, value) {
5553
5642
  actual_resume_token: response.resume_token || null
5554
5643
  }
5555
5644
  }
5556
- };
5645
+ });
5557
5646
  }
5558
5647
  if (packet.packet_id && response.packet_id !== packet.packet_id) {
5559
- return {
5648
+ return checkpointResponseRejectedBlocker(state, {
5649
+ packet,
5650
+ response,
5560
5651
  blocker: {
5561
5652
  code: "checkpoint_response_packet_id_mismatch",
5562
5653
  checkpoint: packet.checkpoint,
@@ -5569,10 +5660,12 @@ function checkpointResponseContinuation(state, value) {
5569
5660
  actual_resume_token: response.resume_token || null
5570
5661
  }
5571
5662
  }
5572
- };
5663
+ });
5573
5664
  }
5574
5665
  if (!packet.allowed_decisions.includes(response.decision)) {
5575
- return {
5666
+ return checkpointResponseRejectedBlocker(state, {
5667
+ packet,
5668
+ response,
5576
5669
  blocker: {
5577
5670
  code: "checkpoint_response_decision_not_allowed",
5578
5671
  checkpoint: packet.checkpoint,
@@ -5584,7 +5677,7 @@ function checkpointResponseContinuation(state, value) {
5584
5677
  response
5585
5678
  }
5586
5679
  }
5587
- };
5680
+ });
5588
5681
  }
5589
5682
  const base = {
5590
5683
  action: "run",
@@ -5594,14 +5687,16 @@ function checkpointResponseContinuation(state, value) {
5594
5687
  if (response.decision === "author_packet") {
5595
5688
  const payload = authorPacketPayloadFromCheckpointResponse(response);
5596
5689
  if (!payload) {
5597
- return {
5690
+ return checkpointResponseRejectedBlocker(state, {
5691
+ packet,
5692
+ response,
5598
5693
  blocker: {
5599
5694
  code: "checkpoint_author_packet_missing",
5600
5695
  checkpoint: packet.checkpoint,
5601
5696
  message: "Checkpoint response decision=author_packet did not include a proof_plan and capture_script payload.",
5602
5697
  details: { stage: packet.stage, response }
5603
5698
  }
5604
- };
5699
+ });
5605
5700
  }
5606
5701
  state.proof_contract = proofContractFromAuthorCheckpointResponse(response, packet, payload);
5607
5702
  appendCheckpointResponse(state, response);
@@ -5630,14 +5725,16 @@ function checkpointResponseContinuation(state, value) {
5630
5725
  const workdir = nonEmptyString(packet.state_excerpt?.after_worktree) || state.worktree_path;
5631
5726
  if (workdir) state.worktree_path = workdir;
5632
5727
  if (!hasGitDiff(workdir)) {
5633
- return {
5728
+ return checkpointResponseRejectedBlocker(state, {
5729
+ packet,
5730
+ response,
5634
5731
  blocker: {
5635
5732
  code: "implementation_diff_missing",
5636
5733
  checkpoint: packet.checkpoint,
5637
5734
  message: "Checkpoint response claimed implementation_complete, but the after worktree has no detectable git diff.",
5638
5735
  details: { stage: packet.stage, worktree_path: workdir || null, response }
5639
5736
  }
5640
- };
5737
+ });
5641
5738
  }
5642
5739
  appendCheckpointResponse(state, response);
5643
5740
  return {
@@ -5686,7 +5783,13 @@ function checkpointResponseContinuation(state, value) {
5686
5783
  response,
5687
5784
  code: "checkpoint_response_source_not_trusted"
5688
5785
  });
5689
- if (sourceBlocker) return { blocker: sourceBlocker };
5786
+ if (sourceBlocker) {
5787
+ return checkpointResponseRejectedBlocker(state, {
5788
+ packet,
5789
+ response,
5790
+ blocker: sourceBlocker
5791
+ });
5792
+ }
5690
5793
  appendCheckpointResponse(state, response);
5691
5794
  if (state.request.ship_mode !== "ship" && proofAssessmentRequestsShip(assessment)) {
5692
5795
  const result = {
@@ -5705,6 +5808,8 @@ function checkpointResponseContinuation(state, value) {
5705
5808
  response.summary || "Riddle Proof evidence is approved, but ship_mode=none is holding before PR/ship.",
5706
5809
  {
5707
5810
  ship_held: true,
5811
+ shipping_disabled: true,
5812
+ ship_authorized: false,
5708
5813
  proof_assessment: assessment
5709
5814
  }
5710
5815
  )
@@ -6298,6 +6403,8 @@ async function routeCheckpoint(request, state, result, agent, input) {
6298
6403
  assessment.summary || result.summary || "Riddle Proof evidence is approved, but ship_mode=none is holding before PR/ship.",
6299
6404
  {
6300
6405
  ship_held: true,
6406
+ shipping_disabled: true,
6407
+ ship_authorized: false,
6301
6408
  proof_assessment: payload
6302
6409
  }
6303
6410
  )
package/dist/cli.js CHANGED
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
- import "./chunk-ECLGGGAI.js";
2
+ import "./chunk-54DIEDR3.js";
3
3
  import "./chunk-DI2XNGEZ.js";
4
4
  import "./chunk-6KYXX4OE.js";
5
5
  import "./chunk-EX7TO4I5.js";
6
- import "./chunk-IV4DVWPR.js";
7
- import "./chunk-WDIKPIMB.js";
8
- import "./chunk-JJ4IWRMJ.js";
6
+ import "./chunk-GHBNDHG7.js";
7
+ import "./chunk-UZIX7M7D.js";
8
+ import "./chunk-KNPCWWF3.js";
9
9
  import "./chunk-EKZXU6MU.js";
10
- import "./chunk-BLM5EIBA.js";
10
+ import "./chunk-MOTQNIZX.js";
11
11
  import "./chunk-JFQXAJH2.js";
12
- import "./chunk-73EBR3YL.js";
13
- import "./chunk-VY4Y5U57.js";
12
+ import "./chunk-RS4HJLJQ.js";
13
+ import "./chunk-CUBYSWZT.js";
14
14
  import "./chunk-MLKGABMK.js";
@@ -2,8 +2,8 @@ import {
2
2
  createCodexExecAgentAdapter,
3
3
  createCodexExecJsonRunner,
4
4
  runCodexExecAgentDoctor
5
- } from "./chunk-73EBR3YL.js";
6
- import "./chunk-VY4Y5U57.js";
5
+ } from "./chunk-RS4HJLJQ.js";
6
+ import "./chunk-CUBYSWZT.js";
7
7
  import "./chunk-MLKGABMK.js";
8
8
  export {
9
9
  createCodexExecAgentAdapter,