@decionis/agent-safe-pipeline 0.4.0 → 0.5.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 (87) hide show
  1. package/README.md +29 -0
  2. package/dist/Index.d.ts +9 -0
  3. package/dist/Index.d.ts.map +1 -1
  4. package/dist/Index.js +9 -0
  5. package/dist/Index.js.map +1 -1
  6. package/dist/execution/ActionRegistry.d.ts +12 -0
  7. package/dist/execution/ActionRegistry.d.ts.map +1 -1
  8. package/dist/execution/ActionRegistry.js +14 -0
  9. package/dist/execution/ActionRegistry.js.map +1 -1
  10. package/dist/execution/GovernedExecutionRunner.d.ts +14 -0
  11. package/dist/execution/GovernedExecutionRunner.d.ts.map +1 -1
  12. package/dist/execution/GovernedExecutionRunner.js +46 -1
  13. package/dist/execution/GovernedExecutionRunner.js.map +1 -1
  14. package/dist/execution/NativeExecutor.d.ts +20 -1
  15. package/dist/execution/NativeExecutor.d.ts.map +1 -1
  16. package/dist/execution/NativeExecutor.js.map +1 -1
  17. package/dist/intent/CanonicalIntentHasher.d.ts.map +1 -1
  18. package/dist/intent/CanonicalIntentHasher.js +11 -0
  19. package/dist/intent/CanonicalIntentHasher.js.map +1 -1
  20. package/dist/intent/ExecutionIntent.d.ts +55 -4
  21. package/dist/intent/ExecutionIntent.d.ts.map +1 -1
  22. package/dist/intent/ExecutionIntent.js +40 -0
  23. package/dist/intent/ExecutionIntent.js.map +1 -1
  24. package/dist/intent/ExecutionSignals.d.ts +9 -1
  25. package/dist/intent/ExecutionSignals.d.ts.map +1 -1
  26. package/dist/intent/ExecutionSignals.js +9 -0
  27. package/dist/intent/ExecutionSignals.js.map +1 -1
  28. package/dist/intent/IntentBindingSchema.d.ts +6 -0
  29. package/dist/intent/IntentBindingSchema.d.ts.map +1 -1
  30. package/dist/intent/IntentBindingSchema.js +10 -0
  31. package/dist/intent/IntentBindingSchema.js.map +1 -1
  32. package/dist/intent/IntentCapture.d.ts.map +1 -1
  33. package/dist/intent/IntentCapture.js +18 -4
  34. package/dist/intent/IntentCapture.js.map +1 -1
  35. package/dist/intent/TargetPrecondition.d.ts +36 -0
  36. package/dist/intent/TargetPrecondition.d.ts.map +1 -0
  37. package/dist/intent/TargetPrecondition.js +57 -0
  38. package/dist/intent/TargetPrecondition.js.map +1 -0
  39. package/dist/manifest/ActionManifest.d.ts +112 -0
  40. package/dist/manifest/ActionManifest.d.ts.map +1 -0
  41. package/dist/manifest/ActionManifest.js +182 -0
  42. package/dist/manifest/ActionManifest.js.map +1 -0
  43. package/dist/plan/GovernedPlan.d.ts +109 -0
  44. package/dist/plan/GovernedPlan.d.ts.map +1 -0
  45. package/dist/plan/GovernedPlan.js +187 -0
  46. package/dist/plan/GovernedPlan.js.map +1 -0
  47. package/dist/plan/PlanState.d.ts +94 -0
  48. package/dist/plan/PlanState.d.ts.map +1 -0
  49. package/dist/plan/PlanState.js +240 -0
  50. package/dist/plan/PlanState.js.map +1 -0
  51. package/dist/plan/PlanStepReference.d.ts +16 -0
  52. package/dist/plan/PlanStepReference.d.ts.map +1 -0
  53. package/dist/plan/PlanStepReference.js +25 -0
  54. package/dist/plan/PlanStepReference.js.map +1 -0
  55. package/dist/profile/ApiProfile.d.ts +354 -0
  56. package/dist/profile/ApiProfile.d.ts.map +1 -0
  57. package/dist/profile/ApiProfile.js +755 -0
  58. package/dist/profile/ApiProfile.js.map +1 -0
  59. package/dist/profile/ApiProfiles.d.ts +16 -0
  60. package/dist/profile/ApiProfiles.d.ts.map +1 -0
  61. package/dist/profile/ApiProfiles.js +29 -0
  62. package/dist/profile/ApiProfiles.js.map +1 -0
  63. package/dist/profile/BuiltInApiProfiles.d.ts +9 -0
  64. package/dist/profile/BuiltInApiProfiles.d.ts.map +1 -0
  65. package/dist/profile/BuiltInApiProfiles.js +494 -0
  66. package/dist/profile/BuiltInApiProfiles.js.map +1 -0
  67. package/dist/profile/McpToolProfile.d.ts +129 -0
  68. package/dist/profile/McpToolProfile.d.ts.map +1 -0
  69. package/dist/profile/McpToolProfile.js +270 -0
  70. package/dist/profile/McpToolProfile.js.map +1 -0
  71. package/dist/testing/Index.d.ts +3 -1
  72. package/dist/testing/Index.d.ts.map +1 -1
  73. package/dist/testing/Index.js +2 -0
  74. package/dist/testing/Index.js.map +1 -1
  75. package/dist/testing/LocalAssumptionBreaches.d.ts +96 -0
  76. package/dist/testing/LocalAssumptionBreaches.d.ts.map +1 -0
  77. package/dist/testing/LocalAssumptionBreaches.js +109 -0
  78. package/dist/testing/LocalAssumptionBreaches.js.map +1 -0
  79. package/dist/testing/LocalAuthority.d.ts +158 -5
  80. package/dist/testing/LocalAuthority.d.ts.map +1 -1
  81. package/dist/testing/LocalAuthority.js +302 -18
  82. package/dist/testing/LocalAuthority.js.map +1 -1
  83. package/dist/testing/LocalPlans.d.ts +43 -0
  84. package/dist/testing/LocalPlans.d.ts.map +1 -0
  85. package/dist/testing/LocalPlans.js +124 -0
  86. package/dist/testing/LocalPlans.js.map +1 -0
  87. package/package.json +5 -4
package/README.md CHANGED
@@ -160,6 +160,25 @@ runtime that observed the effect may pass an `AuthorityEffectEvidence` record as
160
160
  [execution intent](https://github.com/decionis/agent-safe-pipeline/blob/master/docs/execution-intent.md)
161
161
  and [execution outcomes](https://github.com/decionis/agent-safe-pipeline/blob/master/docs/execution-outcomes.md).
162
162
 
163
+ When the authority's policy names a write other than by its action type, the trusted context (or a
164
+ native executor's `PreparedAction`) states the policy path as `policyProjection`:
165
+
166
+ ```ts
167
+ const captured = capture.capture(proposal, {
168
+ ...trusted,
169
+ policyProjection: {
170
+ decisionType: "ORDER_ACCEPTANCE",
171
+ transactionType: "order_acceptance",
172
+ workflowKey: "commerce_order_acceptance",
173
+ channel: "connector", // or null: left out of the evaluation
174
+ },
175
+ });
176
+ ```
177
+
178
+ The binding carries it as `policy_projection`, inside the intent hash, the grant request, a managed
179
+ escalation and the claim, so Decionis decides and re-validates the grant on that path. Without one it
180
+ evaluates the action type, and the intent hashes and travels exactly as it did in 0.4.0.
181
+
163
182
  ## Outcomes
164
183
 
165
184
  Decionis returns one of three verdicts. The executor turns a verdict into exactly one execution
@@ -220,6 +239,14 @@ and implements `capabilities`, `prepare`, `execute`, `observe` and `reconcile`.
220
239
  authority, maps a verdict, retries, or decides an outcome. `EffectAdapter` is the dispatch style
221
240
  under its earlier name and stays, deprecated, for the adapters written against it.
222
241
 
242
+ An executor that can read its target before it writes also implements `readState`: the runner
243
+ calls it once, after `prepare` and before the authority is asked, and binds the version it returns
244
+ into the intent as `context.agent_safe.precondition`. The authority carries the version into the
245
+ claim's attestation, and a verifying provider refuses the write with `TARGET_STATE_CHANGED` once
246
+ the target has moved on. An API profile can name the read as data, and
247
+ `ApiProfile.stateRead` and `ApiProfile.precondition` make it from a write's call
248
+ ([target state](https://github.com/decionis/agent-safe-pipeline/blob/master/docs/authority/target-state.md)).
249
+
223
250
  ### What each record establishes
224
251
 
225
252
  Fluent summaries lose these distinctions first. Each row names the record or state, what it
@@ -513,6 +540,8 @@ Runnable, offline, and fixture-backed unless noted. Each one uses this package u
513
540
  - [`whisper-boundary-demo`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/whisper-boundary-demo): the same proof for a shopping agent — six attacks, zero unauthorized effects.
514
541
  - [`crm-outreach-demo`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/crm-outreach-demo): who can approve a sales agent's CRM update or outbound message — six attacks, a lost provider response reconciled once, zero unauthorized effects.
515
542
  - [`infra-scale-demo`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/infra-scale-demo): the Compromised Principal Test — an infrastructure agent whose identity, credential and API are all valid proposes a `deployment.scale` nobody authorised; seven attacks, a post-authorization mutation failing the binding, zero unauthorized effects.
543
+ - [`changed-conditions-demo`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/changed-conditions-demo): the Changed Conditions Test — an honest agent's queued work meets a changed configuration, a grown target group, a taken allowance, a withdrawn approval, a policy release and a reclassified security group; every grant is refused at the claim, every legitimate counterpart completes exactly once, and an allowance published after the commit instead of with it is refused through an allowance the authority holds.
544
+ - [`staged-change-demo`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/staged-change-demo): one production change as a governed plan (`agent-safe.plan/1`, `matchPlanStep`, the `plan` trusted-context input) — every step decided and granted on its own, a deploy refused before the drain commits, a re-enable escalated after a failed deploy, and a rollback under its own grant.
516
545
  - [`trusted-executor`](https://github.com/decionis/agent-safe-pipeline/tree/master/examples/trusted-executor): the proof of `@decionis/agentsafe`, the execution boundary as one deployable process — an HTTP trusted executor in front of these components — over real HTTP against the loopback doubles, and the adopter's template; the image, Kubernetes manifest and shadow-to-enforcement runbook are in the repository's [deployment kit](https://github.com/decionis/agent-safe-pipeline/blob/master/deploy/README.md).
517
546
 
518
547
  ## Open core
package/dist/Index.d.ts CHANGED
@@ -33,9 +33,18 @@ export * from "./http/StoredCredentials.js";
33
33
  export * from "./intent/CanonicalIntentHasher.js";
34
34
  export * from "./intent/ExecutionIntent.js";
35
35
  export * from "./intent/ExecutionSignals.js";
36
+ export * from "./intent/TargetPrecondition.js";
36
37
  export * from "./intent/IntentBindingSchema.js";
37
38
  export * from "./intent/IntentCapture.js";
38
39
  export * from "./intent/JsonValue.js";
40
+ export * from "./manifest/ActionManifest.js";
41
+ export * from "./plan/GovernedPlan.js";
42
+ export { PlanStepReferenceSchema, type PlanStepReference } from "./plan/PlanStepReference.js";
43
+ export * from "./plan/PlanState.js";
44
+ export * from "./profile/ApiProfile.js";
45
+ export * from "./profile/ApiProfiles.js";
46
+ export * from "./profile/McpToolProfile.js";
47
+ export { BUILT_IN_API_PROFILES } from "./profile/BuiltInApiProfiles.js";
39
48
  export * from "./report/DecisionReport.js";
40
49
  export * from "./report/DossierReport.js";
41
50
  export * from "./report/HostedOutcome.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Index.d.ts","sourceRoot":"","sources":["../src/Index.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EACL,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,GAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,GAC5B,MAAM,qCAAqC,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,iCAAiC,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"Index.d.ts","sourceRoot":"","sources":["../src/Index.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EACL,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,GAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,GAC5B,MAAM,qCAAqC,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,iCAAiC,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC9F,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
package/dist/Index.js CHANGED
@@ -32,9 +32,18 @@ export * from "./http/StoredCredentials.js";
32
32
  export * from "./intent/CanonicalIntentHasher.js";
33
33
  export * from "./intent/ExecutionIntent.js";
34
34
  export * from "./intent/ExecutionSignals.js";
35
+ export * from "./intent/TargetPrecondition.js";
35
36
  export * from "./intent/IntentBindingSchema.js";
36
37
  export * from "./intent/IntentCapture.js";
37
38
  export * from "./intent/JsonValue.js";
39
+ export * from "./manifest/ActionManifest.js";
40
+ export * from "./plan/GovernedPlan.js";
41
+ export { PlanStepReferenceSchema } from "./plan/PlanStepReference.js";
42
+ export * from "./plan/PlanState.js";
43
+ export * from "./profile/ApiProfile.js";
44
+ export * from "./profile/ApiProfiles.js";
45
+ export * from "./profile/McpToolProfile.js";
46
+ export { BUILT_IN_API_PROFILES } from "./profile/BuiltInApiProfiles.js";
38
47
  export * from "./report/DecisionReport.js";
39
48
  export * from "./report/DossierReport.js";
40
49
  export * from "./report/HostedOutcome.js";
package/dist/Index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Index.js","sourceRoot":"","sources":["../src/Index.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EACL,iBAAiB,GAIlB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,eAAe,GAIhB,MAAM,qCAAqC,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAMN,MAAM,iCAAiC,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"Index.js","sourceRoot":"","sources":["../src/Index.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EACL,iBAAiB,GAIlB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,eAAe,GAIhB,MAAM,qCAAqC,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAMN,MAAM,iCAAiC,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAA0B,MAAM,6BAA6B,CAAC;AAC9F,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
@@ -43,6 +43,11 @@ export interface ActionHandler<TParameters, TResult> {
43
43
  /** Read-only provider lookup. It must never initiate or retry a side effect. */
44
44
  reconcile?(context: ActionReconciliationContext<TParameters>): Promise<ProviderReconciliation<TResult>> | ProviderReconciliation<TResult>;
45
45
  }
46
+ /** One registered action as `describe` reports it: its name and the schema admission holds it to. */
47
+ export interface RegisteredActionDescription {
48
+ readonly action: string;
49
+ readonly parametersSchema: z.ZodType<unknown>;
50
+ }
46
51
  export type ActionExecutionAttempt = {
47
52
  readonly status: "COMPLETED";
48
53
  readonly result: unknown;
@@ -113,6 +118,13 @@ export declare class ActionRegistry {
113
118
  register<TParameters, TResult>(action: string, handler: ActionHandler<TParameters, TResult>): this;
114
119
  seal(): this;
115
120
  has(action: string): boolean;
121
+ /**
122
+ * Every registered action with the schema its parameters are admitted
123
+ * against, in registration order: the action space this registry can run.
124
+ * Only a sealed registry describes itself, because only a sealed one cannot
125
+ * grow after the description was taken.
126
+ */
127
+ describe(): readonly RegisteredActionDescription[];
116
128
  validate(captured: CapturedIntent): void;
117
129
  execute(captured: CapturedIntent, authorization: VerifiedAuthorization): Promise<unknown>;
118
130
  executeTracked(captured: CapturedIntent, authorization: VerifiedAuthorization): Promise<ActionExecutionAttempt>;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionRegistry.d.ts","sourceRoot":"","sources":["../../src/execution/ActionRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionRegistry.d.ts","sourceRoot":"","sources":["../../src/execution/ActionRegistry.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,20 @@ export class ActionRegistry {
74
74
  has(action) {
75
75
  return this.actions.has(action);
76
76
  }
77
+ /**
78
+ * Every registered action with the schema its parameters are admitted
79
+ * against, in registration order: the action space this registry can run.
80
+ * Only a sealed registry describes itself, because only a sealed one cannot
81
+ * grow after the description was taken.
82
+ */
83
+ describe() {
84
+ if (!this.sealed)
85
+ throw new Error("ACTION_REGISTRY_NOT_SEALED");
86
+ return [...this.actions].map(([action, handler]) => ({
87
+ action,
88
+ parametersSchema: handler.parametersSchema,
89
+ }));
90
+ }
77
91
  validate(captured) {
78
92
  if (!this.sealed)
79
93
  throw new Error("ACTION_REGISTRY_NOT_SEALED");
@@ -1 +1 @@
1
- {"version":3,"file":"ActionRegistry.js","sourceRoot":"","sources":["../../src/execution/ActionRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionRegistry.js","sourceRoot":"","sources":["../../src/execution/ActionRegistry.ts"],"names":[],"mappings":"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"}
@@ -142,6 +142,14 @@ export declare class GovernedExecutionRunner {
142
142
  * fail-closed decision, never an authorization.
143
143
  */
144
144
  submit<TAction, TResult = unknown>(executor: NativeExecutor<TAction, unknown, TResult>, request: SubmitRequest<TAction>): Promise<SubmitResult<TResult>>;
145
+ /**
146
+ * The executor's read of the target's state version, when it makes one.
147
+ * A read that throws, or answers anything but a precondition or null, is
148
+ * refused here with one stable code, before anything is decided: an intent
149
+ * captured without the version the executor said it would bind would carry
150
+ * a grant no provider could hold to the state it was decided on.
151
+ */
152
+ private static readState;
145
153
  /**
146
154
  * Runs a decided intent. A dispatch-style executor writes once, inside the
147
155
  * dispatch; a permit-style executor's grant is held instead, as `hold`
@@ -278,6 +286,12 @@ export declare class GovernedExecutionRunner {
278
286
  private intentConforms;
279
287
  /** The executor's description of the action, held to the decided intent field by field. */
280
288
  private preparedMatches;
289
+ /**
290
+ * Whether the executor describes the policy path the intent was decided on:
291
+ * both absent, or the same four fields. A projection on one side only is
292
+ * another policy path, never the same one.
293
+ */
294
+ private static sameProjection;
281
295
  /**
282
296
  * The connection must be able to take the write: connected, scope granted,
283
297
  * switched on, for this action type on this platform. The refusal names
@@ -1 +1 @@
1
- {"version":3,"file":"GovernedExecutionRunner.d.ts","sourceRoot":"","sources":["../../src/execution/GovernedExecutionRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GovernedExecutionRunner.d.ts","sourceRoot":"","sources":["../../src/execution/GovernedExecutionRunner.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { AuthorityPaths } from "../http/AuthorityPaths.js";
3
3
  import { CanonicalIntentHasher } from "../intent/CanonicalIntentHasher.js";
4
4
  import { boundaryOf, workloadOf } from "../intent/ExecutionSignals.js";
5
5
  import { IntentCapture } from "../intent/IntentCapture.js";
6
+ import { TargetPreconditionSchema } from "../intent/TargetPrecondition.js";
6
7
  import { PreDispatchRefusal, ProviderRefusal } from "./ActionRegistry.js";
7
8
  import { dispatchBudgetMs, MonotonicDeadline } from "./ExecutionDeadline.js";
8
9
  import { JournalError } from "./ExecutionJournal.js";
@@ -91,6 +92,7 @@ export class GovernedExecutionRunner {
91
92
  if (this.authority === undefined)
92
93
  throw new Error("RUNNER_AUTHORITY_MISSING");
93
94
  const prepared = await executor.prepare(request.action, request.scope);
95
+ const precondition = await GovernedExecutionRunner.readState(executor, request, prepared);
94
96
  const captured = this.capture.capture(prepared.proposal, {
95
97
  tenantId: request.scope.orgId,
96
98
  actor: request.actor,
@@ -100,6 +102,10 @@ export class GovernedExecutionRunner {
100
102
  ...(prepared.expectedEffectDigest === null
101
103
  ? {}
102
104
  : { expectedEffectDigest: prepared.expectedEffectDigest }),
105
+ ...(prepared.policyProjection === undefined
106
+ ? {}
107
+ : { policyProjection: prepared.policyProjection }),
108
+ ...(precondition === null ? {} : { precondition }),
103
109
  // Stryker disable next-line ConditionalExpression: the capture drops an undefined correlation itself; the condition only satisfies the strict optional type.
104
110
  ...(request.correlationId === undefined ? {} : { correlationId: request.correlationId }),
105
111
  });
@@ -118,6 +124,31 @@ export class GovernedExecutionRunner {
118
124
  });
119
125
  return { captured, decision, result };
120
126
  }
127
+ /**
128
+ * The executor's read of the target's state version, when it makes one.
129
+ * A read that throws, or answers anything but a precondition or null, is
130
+ * refused here with one stable code, before anything is decided: an intent
131
+ * captured without the version the executor said it would bind would carry
132
+ * a grant no provider could hold to the state it was decided on.
133
+ */
134
+ static async readState(executor, request, prepared) {
135
+ if (executor.readState === undefined)
136
+ return null;
137
+ let read;
138
+ try {
139
+ read = await executor.readState(request.action, prepared, request.scope);
140
+ }
141
+ catch {
142
+ // A read that throws states nothing, and is refused below with any
143
+ // other answer that is not a precondition: its error never leaves.
144
+ }
145
+ if (read === null)
146
+ return null;
147
+ const parsed = TargetPreconditionSchema.safeParse(read);
148
+ if (!parsed.success)
149
+ throw new Error("TARGET_STATE_UNREADABLE");
150
+ return parsed.data;
151
+ }
121
152
  /**
122
153
  * Runs a decided intent. A dispatch-style executor writes once, inside the
123
154
  * dispatch; a permit-style executor's grant is held instead, as `hold`
@@ -1055,7 +1086,21 @@ export class GovernedExecutionRunner {
1055
1086
  prepared.downstreamTarget.system === intent.downstreamTarget.system &&
1056
1087
  prepared.downstreamTarget.operation === intent.downstreamTarget.operation &&
1057
1088
  prepared.idempotencyKey === intent.idempotencyKey &&
1058
- (prepared.expectedEffectDigest ?? undefined) === intent.expectedEffectDigest);
1089
+ (prepared.expectedEffectDigest ?? undefined) === intent.expectedEffectDigest &&
1090
+ GovernedExecutionRunner.sameProjection(prepared.policyProjection, intent.policyProjection));
1091
+ }
1092
+ /**
1093
+ * Whether the executor describes the policy path the intent was decided on:
1094
+ * both absent, or the same four fields. A projection on one side only is
1095
+ * another policy path, never the same one.
1096
+ */
1097
+ static sameProjection(prepared, decided) {
1098
+ if (prepared === undefined || decided === undefined)
1099
+ return prepared === decided;
1100
+ return (prepared.decisionType === decided.decisionType &&
1101
+ prepared.transactionType === decided.transactionType &&
1102
+ prepared.workflowKey === decided.workflowKey &&
1103
+ prepared.channel === decided.channel);
1059
1104
  }
1060
1105
  /**
1061
1106
  * The connection must be able to take the write: connected, scope granted,
@@ -1 +1 @@
1
- {"version":3,"file":"GovernedExecutionRunner.js","sourceRoot":"","sources":["../../src/execution/GovernedExecutionRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GovernedExecutionRunner.js","sourceRoot":"","sources":["../../src/execution/GovernedExecutionRunner.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { AgentProposal, CapturedIntent, DownstreamTarget } from "../intent/ExecutionIntent.js";
1
+ import type { AgentProposal, CapturedIntent, DownstreamTarget, PolicyProjection } from "../intent/ExecutionIntent.js";
2
2
  import type { JsonObject } from "../intent/JsonValue.js";
3
+ import type { TargetPrecondition } from "../intent/TargetPrecondition.js";
3
4
  import type { ProviderDispatch } from "./ActionRegistry.js";
4
5
  import type { AuthorityEffectEvidence, VerifiedAuthorization } from "./AuthorizationVerifier.js";
5
6
  import type { MonotonicDeadline } from "./ExecutionDeadline.js";
@@ -83,6 +84,12 @@ export interface PreparedAction {
83
84
  readonly requestDigest: Sha256Digest;
84
85
  /** Platform facts the authority evaluates, carried in the intent's trusted context. */
85
86
  readonly facts: JsonObject;
87
+ /**
88
+ * The policy path the authority decides the action under, bound into the
89
+ * intent as `policy_projection`, when the policy names the write other than
90
+ * by its action type. Absent, the authority evaluates the action type.
91
+ */
92
+ readonly policyProjection?: PolicyProjection;
86
93
  }
87
94
  /**
88
95
  * The permit a native boundary presents with its write. It stands for one
@@ -210,6 +217,18 @@ export interface NativeExecutor<TAction = unknown, TReceipt = JsonObject, TResul
210
217
  capabilities(scope: ExecutorScope): Promise<readonly ExecutionCapability[]>;
211
218
  /** Platform facts + `agent-safe.intent/1` binding + idempotency identity. No I/O side effects. */
212
219
  prepare(action: TAction, scope: ExecutorScope | null): Promise<PreparedAction>;
220
+ /**
221
+ * Optional: the target's state version, read once, read-only, after
222
+ * `prepare` and before the authority is asked. The runner binds it into the
223
+ * intent as `agent_safe.precondition`; the authority carries it to a
224
+ * verifying provider, which refuses the write once the target moved on, and
225
+ * an executor whose platform takes a conditional write sends it as the
226
+ * write's precondition (`If-Match`) itself. Null when the action names no
227
+ * existing target, a create. It is the only I/O before a decision, and a
228
+ * read that fails is a refusal: nothing is decided without the version the
229
+ * executor said it would bind.
230
+ */
231
+ readState?(action: TAction, prepared: PreparedAction, scope: ExecutorScope | null): Promise<TargetPrecondition | null>;
213
232
  /** dispatch: write once with the claimed grant. permit: return the permit the native boundary must present. */
214
233
  execute(run: ClaimedExecution<TAction>): Promise<ExecutionEffect<TReceipt>>;
215
234
  /** Map the native receipt (posting entry, feed ID, HTTP status) to COMMITTED | FAILED | INDETERMINATE. */