@coderifts/agent-guard 3.0.1 → 4.1.0

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 (92) hide show
  1. package/README.md +46 -1
  2. package/dist/cjs/artifact-resolver.d.ts +8 -0
  3. package/dist/cjs/artifact-resolver.d.ts.map +1 -1
  4. package/dist/cjs/artifact-resolver.js +12 -1
  5. package/dist/cjs/artifact-resolver.js.map +1 -1
  6. package/dist/cjs/conditional-write.d.ts +92 -0
  7. package/dist/cjs/conditional-write.d.ts.map +1 -0
  8. package/dist/cjs/conditional-write.js +96 -0
  9. package/dist/cjs/conditional-write.js.map +1 -0
  10. package/dist/cjs/deploy-bind.d.ts +123 -0
  11. package/dist/cjs/deploy-bind.d.ts.map +1 -0
  12. package/dist/cjs/deploy-bind.js +112 -0
  13. package/dist/cjs/deploy-bind.js.map +1 -0
  14. package/dist/cjs/enforcement-gate.d.ts +13 -4
  15. package/dist/cjs/enforcement-gate.d.ts.map +1 -1
  16. package/dist/cjs/enforcement-gate.js +32 -7
  17. package/dist/cjs/enforcement-gate.js.map +1 -1
  18. package/dist/cjs/execution-proof.d.ts +145 -0
  19. package/dist/cjs/execution-proof.d.ts.map +1 -0
  20. package/dist/cjs/execution-proof.js +168 -0
  21. package/dist/cjs/execution-proof.js.map +1 -0
  22. package/dist/cjs/freshness.d.ts +244 -0
  23. package/dist/cjs/freshness.d.ts.map +1 -0
  24. package/dist/cjs/freshness.js +395 -0
  25. package/dist/cjs/freshness.js.map +1 -0
  26. package/dist/cjs/guard.d.ts +8 -1
  27. package/dist/cjs/guard.d.ts.map +1 -1
  28. package/dist/cjs/guard.js +181 -38
  29. package/dist/cjs/guard.js.map +1 -1
  30. package/dist/cjs/index.d.ts +12 -4
  31. package/dist/cjs/index.d.ts.map +1 -1
  32. package/dist/cjs/index.js +34 -3
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/cjs/read-decision.d.ts +47 -0
  35. package/dist/cjs/read-decision.d.ts.map +1 -0
  36. package/dist/cjs/read-decision.js +161 -0
  37. package/dist/cjs/read-decision.js.map +1 -0
  38. package/dist/cjs/tool-registry.d.ts.map +1 -1
  39. package/dist/cjs/tool-registry.js +12 -1
  40. package/dist/cjs/tool-registry.js.map +1 -1
  41. package/dist/cjs/types.d.ts +47 -1
  42. package/dist/cjs/types.d.ts.map +1 -1
  43. package/dist/cjs/with-coderifts.d.ts +76 -8
  44. package/dist/cjs/with-coderifts.d.ts.map +1 -1
  45. package/dist/cjs/with-coderifts.js +185 -14
  46. package/dist/cjs/with-coderifts.js.map +1 -1
  47. package/dist/esm/artifact-resolver.d.ts +8 -0
  48. package/dist/esm/artifact-resolver.d.ts.map +1 -1
  49. package/dist/esm/artifact-resolver.js +11 -1
  50. package/dist/esm/artifact-resolver.js.map +1 -1
  51. package/dist/esm/conditional-write.d.ts +92 -0
  52. package/dist/esm/conditional-write.d.ts.map +1 -0
  53. package/dist/esm/conditional-write.js +91 -0
  54. package/dist/esm/conditional-write.js.map +1 -0
  55. package/dist/esm/deploy-bind.d.ts +123 -0
  56. package/dist/esm/deploy-bind.d.ts.map +1 -0
  57. package/dist/esm/deploy-bind.js +108 -0
  58. package/dist/esm/deploy-bind.js.map +1 -0
  59. package/dist/esm/enforcement-gate.d.ts +13 -4
  60. package/dist/esm/enforcement-gate.d.ts.map +1 -1
  61. package/dist/esm/enforcement-gate.js +32 -7
  62. package/dist/esm/enforcement-gate.js.map +1 -1
  63. package/dist/esm/execution-proof.d.ts +145 -0
  64. package/dist/esm/execution-proof.d.ts.map +1 -0
  65. package/dist/esm/execution-proof.js +162 -0
  66. package/dist/esm/execution-proof.js.map +1 -0
  67. package/dist/esm/freshness.d.ts +244 -0
  68. package/dist/esm/freshness.d.ts.map +1 -0
  69. package/dist/esm/freshness.js +384 -0
  70. package/dist/esm/freshness.js.map +1 -0
  71. package/dist/esm/guard.d.ts +8 -1
  72. package/dist/esm/guard.d.ts.map +1 -1
  73. package/dist/esm/guard.js +180 -37
  74. package/dist/esm/guard.js.map +1 -1
  75. package/dist/esm/index.d.ts +12 -4
  76. package/dist/esm/index.d.ts.map +1 -1
  77. package/dist/esm/index.js +12 -2
  78. package/dist/esm/index.js.map +1 -1
  79. package/dist/esm/read-decision.d.ts +47 -0
  80. package/dist/esm/read-decision.d.ts.map +1 -0
  81. package/dist/esm/read-decision.js +153 -0
  82. package/dist/esm/read-decision.js.map +1 -0
  83. package/dist/esm/tool-registry.d.ts.map +1 -1
  84. package/dist/esm/tool-registry.js +12 -1
  85. package/dist/esm/tool-registry.js.map +1 -1
  86. package/dist/esm/types.d.ts +47 -1
  87. package/dist/esm/types.d.ts.map +1 -1
  88. package/dist/esm/with-coderifts.d.ts +76 -8
  89. package/dist/esm/with-coderifts.d.ts.map +1 -1
  90. package/dist/esm/with-coderifts.js +185 -14
  91. package/dist/esm/with-coderifts.js.map +1 -1
  92. package/package.json +1 -1
@@ -36,9 +36,10 @@
36
36
  * enforcement coverage".
37
37
  * - onEvent is partial even for other branches (e.g. closed-availability stops may emit only
38
38
  * preflight_start; the declared type 'execution_skipped' is never emitted by the frozen core).
39
- * - Neither hook alone is a complete substrate for receipt carry-forward: onEvent lacks the
40
- * envelope/receipt; onSettledCall exposes them when present on the GUARDED+RETURNED arm but does
41
- * not retain or re-inject them across calls (that is a later slice).
39
+ * - onEvent still lacks envelope/receipt. onSettledCall exposes them on GUARDED+RETURNED when present.
40
+ * S5: when threadReceipts is enabled (default), the composition ALSO retains the last enforced
41
+ * receipt token and re-injects it as previous_receipt on the next preflight — host previousReceipt
42
+ * always wins over the cursor. This is carry-forward of a token, not chain authenticity.
42
43
  *
43
44
  * S2 does NOT re-guard what the registry already fails closed on. A `forceReadonly`/`classify`
44
45
  * downgrade of a heuristic mutator is, under the registry's default `failOnUnguardedMutator:true`,
@@ -52,10 +53,15 @@
52
53
  * inescapability) requires ALL of the following — do not flip the constant when only a subset lands:
53
54
  * (1) Automatic binders for call shapes that ALREADY carry both sides of the change (old_string/
54
55
  * new_string, edits[]) — DONE. Not the same as covering every real agent edit shape.
55
- * (2) Receipt carry-forward (S5) — host-threaded chaining is POSSIBLE (optional previousReceipt +
56
- * verifyReceiptChainLinkage). NOT met for this constant: the composition holds no cursor.
56
+ * (2) Receipt carry-forward (S5) — composition cursor EXISTS (threadReceipts default on; host
57
+ * previousReceipt overrides; advance only on enforced + receipt token; refuse under overlap).
58
+ * NOT sufficient alone to flip this constant: package never self-attests chain authenticity
59
+ * (consumer re-runs verifyReceiptChainLinkage), and concurrent overlap refuses to advance.
57
60
  * (3) A freshness-safe source of prior content for write-style calls (path + new content only) —
58
- * NOT done.
61
+ * PURE CORE shipped (`assessFreshness` / `assessWriteStylePrior` in freshness.ts): content-
62
+ * identity recompute, four outcomes, write-style requires artifact id. NOT DONE: wiring into
63
+ * guardToolCall enforce path, host resolve adapter, receipt-bound optional tree hash, or
64
+ * flipping COMPOSITION_CALL_POLICY_COMPLETE.
59
65
  *
60
66
  * THE TWO-SCOPE RULE (never merged):
61
67
  * - `registry_report` is EXACTLY what `guardToolRegistry` returned, passed through untouched.
@@ -105,13 +111,18 @@ export function guardedFractionAmongRoutes(counts) {
105
111
  * Conditions (all required; do NOT flip this constant because a subset landed):
106
112
  * (1) DONE — automatic binders for shapes that already carry both edit sides (old_string/new_string,
107
113
  * edits[] → artifacts). Does NOT cover write-style path+new-content-only calls.
108
- * (2) NOT DONE — receipt carry-forward (S5).
109
- * (3) NOT DONE freshness-safe prior content for write-style calls.
114
+ * (2) PARTIALcomposition receipt cursor (S5) ships; still not product-level chain authenticity
115
+ * and refuses under concurrent overlap (honest non-order, not a guessed order).
116
+ * (3) NOT DONE for product claim — pure core + opt-in wiring exist (resolvePriorContent +
117
+ * per-call basis). COMPOSITION_CALL_POLICY_COMPLETE stays false until freshness is ACTIVE
118
+ * by default for writes AND remaining conjuncts land. Host may still omit the resolver.
110
119
  *
111
120
  * UNCHANGED by S2 / composition observation (observing ≠ enforcing). Value stays false until all three.
112
121
  */
113
122
  const COMPOSITION_CALL_POLICY_COMPLETE = false;
114
123
  const RESIDUAL_CALL_POLICY_INCOMPLETE = 'composition_call_policy_incomplete';
124
+ /** Composition residual: host did not supply resolvePriorContent (NOT the same as DEGRADED). */
125
+ const RESIDUAL_FRESHNESS_NOT_CONFIGURED = 'composition_freshness_not_configured';
115
126
  // S2 weakening-override residuals — derived SOLELY from registry report.warnings (never recomputed).
116
127
  const RESIDUAL_FORCED_READONLY = 'composition_forced_readonly_on_heuristic_mutator';
117
128
  const RESIDUAL_UNKNOWN_READONLY = 'composition_unknown_treated_as_readonly';
@@ -218,6 +229,120 @@ function routeForTool(tool, bypassed) {
218
229
  return 'BYPASSED';
219
230
  return 'PASSTHROUGH';
220
231
  }
232
+ /** Resolve host previousReceipt the same way the frozen guard does (string or getter). */
233
+ function resolveHostPreviousReceipt(pr) {
234
+ let raw;
235
+ if (typeof pr === 'function') {
236
+ try {
237
+ raw = pr();
238
+ }
239
+ catch {
240
+ return undefined;
241
+ }
242
+ }
243
+ else {
244
+ raw = pr;
245
+ }
246
+ if (typeof raw !== 'string')
247
+ return undefined;
248
+ const s = raw.trim();
249
+ return s.length > 0 ? s : undefined;
250
+ }
251
+ function createReceiptCursor(enabled) {
252
+ const state = {
253
+ enabled,
254
+ token: undefined,
255
+ inFlight: 0,
256
+ overlapDirty: false,
257
+ lastSkip: null,
258
+ begin() {
259
+ if (!enabled)
260
+ return;
261
+ if (state.inFlight > 0)
262
+ state.overlapDirty = true;
263
+ state.inFlight += 1;
264
+ },
265
+ end() {
266
+ if (!enabled)
267
+ return;
268
+ state.inFlight -= 1;
269
+ if (state.inFlight <= 0) {
270
+ state.inFlight = 0;
271
+ state.overlapDirty = false;
272
+ }
273
+ },
274
+ considerOutcome(outcome) {
275
+ if (!enabled)
276
+ return;
277
+ if (state.overlapDirty) {
278
+ state.lastSkip = 'concurrent_overlap';
279
+ return;
280
+ }
281
+ if (!outcome || typeof outcome !== 'object' || outcome.enforced !== true) {
282
+ state.lastSkip = 'not_enforced';
283
+ return;
284
+ }
285
+ const token = outcome.verdict
286
+ ?.envelope?.receipt?.token;
287
+ if (typeof token !== 'string' || token.trim().length === 0) {
288
+ state.lastSkip = 'no_receipt_token';
289
+ return;
290
+ }
291
+ state.token = token.trim();
292
+ state.lastSkip = null;
293
+ },
294
+ considerThrow() {
295
+ if (!enabled)
296
+ return;
297
+ if (state.overlapDirty) {
298
+ state.lastSkip = 'concurrent_overlap';
299
+ return;
300
+ }
301
+ state.lastSkip = 'threw_before_outcome';
302
+ },
303
+ handle: {
304
+ enabled,
305
+ lastToken: () => state.token,
306
+ lastSkipReason: () => state.lastSkip,
307
+ },
308
+ };
309
+ return state;
310
+ }
311
+ /**
312
+ * Wrap a GUARDED tool so the composition can begin/end the cursor around the call and advance
313
+ * from the GuardOutcome the frozen path returns. Does not change guardToolCall's signature.
314
+ */
315
+ function wrapForReceiptCursor(tool, cursor) {
316
+ if (!tool._coderifts.guarded || !cursor.enabled)
317
+ return tool;
318
+ const innerExecute = tool.execute;
319
+ const shell = {
320
+ name: tool.name,
321
+ description: tool.description,
322
+ inputSchema: tool.inputSchema,
323
+ meta: tool.meta,
324
+ _coderifts: tool._coderifts,
325
+ execute: async (args) => {
326
+ cursor.begin();
327
+ try {
328
+ const result = await innerExecute(args);
329
+ // Guarded execute returns GuardOutcome (does not throw on BLOCK).
330
+ cursor.considerOutcome(result);
331
+ return result;
332
+ }
333
+ catch (error) {
334
+ cursor.considerThrow();
335
+ throw error;
336
+ }
337
+ finally {
338
+ cursor.end();
339
+ }
340
+ },
341
+ };
342
+ if (!Object.isFrozen(shell._coderifts))
343
+ Object.freeze(shell._coderifts);
344
+ return Object.freeze(shell);
345
+ }
221
346
  /**
222
347
  * Wrap guardToolRegistry with a mandatory operation and a separately-computed composition assurance.
223
348
  * Fails at CONSTRUCTION (never at first tool call) for a missing client, a missing/empty operation, an
@@ -252,6 +377,11 @@ export function withCodeRifts(input) {
252
377
  // composition_unknown_treated_as_readonly residual below.
253
378
  // - failOnUnguardedMutator: NOT defaulted here — the registry owns its own default (true). Forward
254
379
  // the caller's value if given so there is a single source of truth for it.
380
+ // Receipt cursor: per composition instance. Default ON (opt-out via threadReceipts:false).
381
+ // Host previousReceipt always wins over the cursor at resolve time.
382
+ const threadReceipts = input.threadReceipts !== false;
383
+ const receiptCursor = createReceiptCursor(threadReceipts);
384
+ const hostPreviousReceipt = input.previousReceipt;
255
385
  // Guard config: client + operation always; onEvent + monitoringSinkWired forwarded UNCHANGED when
256
386
  // provided (no second try/catch layer — frozen emit already swallows sync throws).
257
387
  const guard = { client: input.client, operation: input.operation };
@@ -261,8 +391,28 @@ export function withCodeRifts(input) {
261
391
  if (input.monitoringSinkWired !== undefined) {
262
392
  guard.monitoringSinkWired = input.monitoringSinkWired;
263
393
  }
264
- if (input.previousReceipt !== undefined) {
265
- guard.previousReceipt = input.previousReceipt;
394
+ // previousReceipt getter: host override > composition cursor > undefined.
395
+ // Always install a getter when threading is on OR the host supplied an override, so the frozen
396
+ // path reads current values per call without a guardToolCall signature change.
397
+ if (hostPreviousReceipt !== undefined || threadReceipts) {
398
+ guard.previousReceipt = () => {
399
+ if (hostPreviousReceipt !== undefined) {
400
+ return resolveHostPreviousReceipt(hostPreviousReceipt);
401
+ }
402
+ return receiptCursor.token;
403
+ };
404
+ }
405
+ if (input.resolvePriorContent !== undefined) {
406
+ guard.resolvePriorContent = input.resolvePriorContent;
407
+ }
408
+ if (input.requireFreshness !== undefined) {
409
+ guard.requireFreshness = input.requireFreshness;
410
+ }
411
+ if (input.allowStaleContext !== undefined) {
412
+ guard.allowStaleContext = input.allowStaleContext;
413
+ }
414
+ if (input.requireConditionalWrite !== undefined) {
415
+ guard.requireConditionalWrite = input.requireConditionalWrite;
266
416
  }
267
417
  const config = {
268
418
  guard,
@@ -303,26 +453,47 @@ export function withCodeRifts(input) {
303
453
  if (report.warnings.includes('unknown_treated_as_readonly')) {
304
454
  residuals.push(RESIDUAL_UNKNOWN_READONLY);
305
455
  }
456
+ // Freshness resolver: composition-level visibility. Absence is residual NOT_CONFIGURED;
457
+ // presence is a host claim (freshness_resolver_wired), not proof every call was measured.
458
+ // Does NOT flip COMPOSITION_CALL_POLICY_COMPLETE or inescapable_runtime.
459
+ const freshness_resolver_wired = typeof input.resolvePriorContent === 'function';
460
+ if (!freshness_resolver_wired) {
461
+ residuals.push(RESIDUAL_FRESHNESS_NOT_CONFIGURED);
462
+ }
463
+ // requireConditionalWrite policy without a host reporting path: residual only (inescapable stays false).
464
+ // Per-call truth is outcome.conditional_write; composition names the policy gap.
465
+ if (input.requireConditionalWrite === true) {
466
+ residuals.push('composition_unconditional_write_under_policy');
467
+ }
306
468
  // 'PARTIAL' from the existing EnforcementCoverage union — never 'COMPLETE' while inescapable_runtime
307
469
  // is false (that combination would contradict the registry's own formula). UNCHANGED by S2 / observation.
308
470
  const composition_assurance = {
309
471
  coverage: 'PARTIAL',
310
472
  inescapable_runtime: compositionInescapableRuntime,
311
473
  residuals,
474
+ freshness_resolver_wired,
312
475
  };
313
- // Settled-call observation: registry returns FROZEN ProtectedTool objects (and a frozen tools array).
314
- // We cannot reassign execute on a frozen tool, so we build NEW shells for EVERY tool in the table
315
- // when onSettledCall is provided including passthrough and forced-bypass (readonly) tools.
476
+ // Settled-call observation + receipt cursor: registry returns FROZEN ProtectedTool objects.
477
+ // We build NEW shells (cannot reassign execute). Layering from inside out:
478
+ // registry guard receipt cursor (GUARDED only) onSettledCall observation (all routes)
479
+ // begin() runs before preflight so concurrent overlap is visible to the cursor rule.
316
480
  let toolsOut = tools;
481
+ if (threadReceipts) {
482
+ toolsOut = toolsOut.map((t) => wrapForReceiptCursor(t, receiptCursor));
483
+ }
317
484
  if (input.onSettledCall) {
318
485
  const onSettledCall = input.onSettledCall;
319
486
  const bypassed = bypassedToolNames(report);
320
- toolsOut = Object.freeze(tools.map((t) => wrapForSettledCallObservation(t, routeForTool(t, bypassed), onSettledCall)));
487
+ toolsOut = Object.freeze(toolsOut.map((t) => wrapForSettledCallObservation(t, routeForTool(t, bypassed), onSettledCall)));
488
+ }
489
+ else if (threadReceipts) {
490
+ toolsOut = Object.freeze(toolsOut);
321
491
  }
322
492
  const result = {
323
493
  tools: toolsOut,
324
494
  registry_report: report,
325
495
  composition_assurance,
496
+ receipt_thread: receiptCursor.handle,
326
497
  };
327
498
  if (input.repository !== undefined)
328
499
  result.repository = input.repository;
@@ -1 +1 @@
1
- {"version":3,"file":"with-coderifts.js","sourceRoot":"","sources":["../../src/with-coderifts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"with-coderifts.js","sourceRoot":"","sources":["../../src/with-coderifts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coderifts/agent-guard",
3
- "version": "3.0.1",
3
+ "version": "4.1.0",
4
4
  "description": "Fail-closed guard for AI agent tool calls — preflight contract changes before they execute. Security core frozen (agent-guard-api v1.0); v1.1 adds client-side enforcement: receipt→envelope binding, decision↔action reconciliation, safe_for_agent + degraded fail-closed, and enforced⟺executed (P0 client-enforcement pack).",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",