@gate-forge/core 0.3.0 → 0.6.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 (94) hide show
  1. package/dist/baselines/index.js +1 -1
  2. package/dist/baselines/index.js.map +1 -1
  3. package/dist/config/index.d.ts +2 -1
  4. package/dist/config/index.d.ts.map +1 -1
  5. package/dist/config/index.js +7 -0
  6. package/dist/config/index.js.map +1 -1
  7. package/dist/fingerprints.d.ts +35 -4
  8. package/dist/fingerprints.d.ts.map +1 -1
  9. package/dist/fingerprints.js +58 -5
  10. package/dist/fingerprints.js.map +1 -1
  11. package/dist/index.d.ts +32 -10
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +29 -9
  14. package/dist/index.js.map +1 -1
  15. package/dist/mapping/resolve.d.ts +6 -2
  16. package/dist/mapping/resolve.d.ts.map +1 -1
  17. package/dist/mapping/resolve.js +122 -17
  18. package/dist/mapping/resolve.js.map +1 -1
  19. package/dist/policy/behavior.d.ts +44 -0
  20. package/dist/policy/behavior.d.ts.map +1 -0
  21. package/dist/policy/behavior.js +373 -0
  22. package/dist/policy/behavior.js.map +1 -0
  23. package/dist/policy/coverage.d.ts +4 -3
  24. package/dist/policy/coverage.d.ts.map +1 -1
  25. package/dist/policy/coverage.js +12 -6
  26. package/dist/policy/coverage.js.map +1 -1
  27. package/dist/policy/evaluate.d.ts +19 -0
  28. package/dist/policy/evaluate.d.ts.map +1 -1
  29. package/dist/policy/index.d.ts +1 -0
  30. package/dist/policy/index.d.ts.map +1 -1
  31. package/dist/policy/index.js +1 -0
  32. package/dist/policy/index.js.map +1 -1
  33. package/dist/receipt/index.d.ts +56 -4
  34. package/dist/receipt/index.d.ts.map +1 -1
  35. package/dist/receipt/index.js +139 -5
  36. package/dist/receipt/index.js.map +1 -1
  37. package/dist/report/index.js +4 -19
  38. package/dist/report/index.js.map +1 -1
  39. package/dist/schemas/behavior-catalog.d.ts +2868 -0
  40. package/dist/schemas/behavior-catalog.d.ts.map +1 -0
  41. package/dist/schemas/behavior-catalog.js +103 -0
  42. package/dist/schemas/behavior-catalog.js.map +1 -0
  43. package/dist/schemas/behavior-evidence.d.ts +174 -0
  44. package/dist/schemas/behavior-evidence.d.ts.map +1 -0
  45. package/dist/schemas/behavior-evidence.js +157 -0
  46. package/dist/schemas/behavior-evidence.js.map +1 -0
  47. package/dist/schemas/behavior-policy.d.ts +6214 -0
  48. package/dist/schemas/behavior-policy.d.ts.map +1 -0
  49. package/dist/schemas/behavior-policy.js +896 -0
  50. package/dist/schemas/behavior-policy.js.map +1 -0
  51. package/dist/schemas/execution-result.d.ts +4 -4
  52. package/dist/schemas/gate-receipt.d.ts +10 -3
  53. package/dist/schemas/gate-receipt.d.ts.map +1 -1
  54. package/dist/schemas/gate-receipt.js +46 -3
  55. package/dist/schemas/gate-receipt.js.map +1 -1
  56. package/dist/schemas/index.d.ts +3 -0
  57. package/dist/schemas/index.d.ts.map +1 -1
  58. package/dist/schemas/index.js +3 -0
  59. package/dist/schemas/index.js.map +1 -1
  60. package/dist/schemas/obligation.d.ts +1 -0
  61. package/dist/schemas/obligation.d.ts.map +1 -1
  62. package/dist/schemas/obligation.js +9 -0
  63. package/dist/schemas/obligation.js.map +1 -1
  64. package/dist/schemas/test-catalog.d.ts +20 -2
  65. package/dist/schemas/test-catalog.d.ts.map +1 -1
  66. package/dist/schemas/test-catalog.js +13 -0
  67. package/dist/schemas/test-catalog.js.map +1 -1
  68. package/dist/schemas/test-map.d.ts +4 -0
  69. package/dist/schemas/test-map.d.ts.map +1 -1
  70. package/dist/schemas/test-map.js +24 -1
  71. package/dist/schemas/test-map.js.map +1 -1
  72. package/dist/schemas/verdict.d.ts +9 -0
  73. package/dist/schemas/verdict.d.ts.map +1 -1
  74. package/dist/schemas/verdict.js +27 -6
  75. package/dist/schemas/verdict.js.map +1 -1
  76. package/dist/testing/gate-runner.d.ts.map +1 -1
  77. package/dist/testing/gate-runner.js +2 -7
  78. package/dist/testing/gate-runner.js.map +1 -1
  79. package/dist/verdict/behavior.d.ts +87 -0
  80. package/dist/verdict/behavior.d.ts.map +1 -0
  81. package/dist/verdict/behavior.js +1328 -0
  82. package/dist/verdict/behavior.js.map +1 -0
  83. package/dist/verdict/evaluate.d.ts +10 -0
  84. package/dist/verdict/evaluate.d.ts.map +1 -1
  85. package/dist/verdict/evaluate.js +188 -27
  86. package/dist/verdict/evaluate.js.map +1 -1
  87. package/dist/verdict/index.d.ts +6 -0
  88. package/dist/verdict/index.d.ts.map +1 -1
  89. package/dist/verdict/index.js +6 -0
  90. package/dist/verdict/index.js.map +1 -1
  91. package/dist/verdict/pack-verifiers.d.ts.map +1 -1
  92. package/dist/verdict/pack-verifiers.js +124 -33
  93. package/dist/verdict/pack-verifiers.js.map +1 -1
  94. package/package.json +1 -1
@@ -59,6 +59,15 @@ export const CauseCodeSchema = z.enum([
59
59
  'DIAGNOSTIC_TEST_FAILURE',
60
60
  'DIAGNOSTIC_RUN_INCOMPLETE',
61
61
  'DIAGNOSTIC_RESULT_STALE',
62
+ 'ENDPOINT_BEHAVIOR_MISSING',
63
+ 'BEHAVIOR_REFERENCE_STALE',
64
+ 'BEHAVIOR_CASE_UNMAPPED',
65
+ 'BEHAVIOR_CASE_MISSING',
66
+ 'BEHAVIOR_BINDING_MISMATCH',
67
+ 'BEHAVIOR_EFFECT_MISMATCH',
68
+ 'OBSERVATION_SCOPE_INCOMPLETE',
69
+ 'BEHAVIOR_UNEXPECTED_EFFECT',
70
+ 'ENFORCEMENT_BOUNDARY_UNVERIFIED',
62
71
  ]);
63
72
  /**
64
73
  * The plan §5.4 next action per cause code. Text, JSON, and SARIF
@@ -68,25 +77,37 @@ export const CauseCodeSchema = z.enum([
68
77
  export const CAUSE_NEXT_ACTIONS = Object.freeze({
69
78
  TEST_INVENTORY_INCOMPLETE: 'Repair discovery or register a supported adapter',
70
79
  TEST_KIND_UNKNOWN: 'Inspect and declare its kind',
71
- TEST_MAPPING_MISSING: 'Run `gateforge tests suggest`, mark the matching test (`gateforge tests mark` / .gateforge/test-map.yml), ' +
72
- 'map backend-only tables server-e2e, or waive it (`gateforge waive`) — docs/guides/new-table-playbook.md',
80
+ TEST_MAPPING_MISSING: 'Overlay: write `tests/e2e/gateforge/<resource>.<op>.spec.js`. Do not `tests mark` as a fix ' +
81
+ '— that cannot satisfy the obligation.',
73
82
  TEST_MAPPING_AMBIGUOUS: 'Correct the exact mapping',
74
83
  TEST_MAPPING_STALE: 'Correct the exact mapping',
75
- EVIDENCE_NOT_COLLECTED: 'Add observation hooks to that test',
76
- VERIFIER_UNSUPPORTED: 'Implement/configure the observer; do not add duplicate tests',
84
+ EVIDENCE_NOT_COLLECTED: 'Write an overlay test in `tests/e2e/gateforge/` using the Gateforge Playwright fixture ' +
85
+ '(`evidence.ui.*` + `persistence.verify`). Do not rewrite existing journeys. Mappings ' +
86
+ '(`tests mark`) are intent, not proof.',
87
+ VERIFIER_UNSUPPORTED: 'Remove this contract from `.gateforge/policies.yml` or drop the pack. Do not add tests.',
77
88
  TEST_NOT_EXECUTED: 'Run or repair the selected suite',
78
89
  TEST_FAILED: 'Run or repair the selected suite',
79
90
  RUN_INCOMPLETE: 'Run or repair the selected suite',
80
91
  EVIDENCE_STALE: 'Rerun for the exact candidate',
81
- CHANGE_UNMAPPED: 'Map the behavior or repair detection',
92
+ CHANGE_UNMAPPED: 'Map detection or add an overlay test for the changed resource. Do not weaken policy.',
82
93
  EVIDENCE_SCOPE_INCOMPLETE: 'Map a test to the uncovered obligation (`gateforge tests mark`) or run full scope ' +
83
94
  '(`test-gates --changed` without `--scope changed`)',
84
95
  ENFORCEMENT_UNTRUSTED: 'Repair enforcement setup',
85
96
  EVIDENCE_VALUE_MISMATCH: 'Fix the mutation path or correct the mapping',
86
97
  SERVER_PROBE_UNAVAILABLE: 'Export/repair the adapter server probe (probeServer) so the witness can observe the database engine-side',
87
- CRUD_COVERAGE_MISSING: 'Connect/mark existing journeys, add the missing journey, or record an owner disposition',
98
+ CRUD_COVERAGE_MISSING: 'Owner: add an overlay test, or record a disposition in trusted `coveragePolicy` ' +
99
+ '(agents must not edit coveragePolicy).',
88
100
  DIAGNOSTIC_TEST_FAILURE: 'Inspect the named test, assertion, and relevant application code',
89
101
  DIAGNOSTIC_RUN_INCOMPLETE: 'Repair the run; an incomplete diagnostic run never displays as passing',
90
102
  DIAGNOSTIC_RESULT_STALE: 'Rerun the diagnostic suite for the exact candidate',
103
+ ENDPOINT_BEHAVIOR_MISSING: 'Owner defines endpoint behavior; agent cannot exclude it',
104
+ BEHAVIOR_REFERENCE_STALE: 'Repair reviewed references and rerun',
105
+ BEHAVIOR_CASE_UNMAPPED: 'Reuse/map a suitable test, or add thin overlay proof',
106
+ BEHAVIOR_CASE_MISSING: 'Execute the case through its required channel',
107
+ BEHAVIOR_BINDING_MISMATCH: 'Repair wrong path/record binding; no label changes as proof',
108
+ BEHAVIOR_EFFECT_MISMATCH: 'Fix the application or owner-reviewed expectation',
109
+ OBSERVATION_SCOPE_INCOMPLETE: 'Supply a working trusted observer or fix collection',
110
+ BEHAVIOR_UNEXPECTED_EFFECT: 'Fix application side effect',
111
+ ENFORCEMENT_BOUNDARY_UNVERIFIED: 'Owner provisions/verifies runtime',
91
112
  });
92
113
  //# sourceMappingURL=verdict.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/schemas/verdict.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,WAAW;IACX,SAAS;IACT,SAAS;IACT,cAAc;IACd,YAAY;IACZ,QAAQ;IACR,OAAO;CACR,CAAC,CAAC;AAKH,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,kEAAkE;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,uDAAuD;IACvD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,EAAE,cAAc;CACzB,CAAC;KACD,MAAM,EAAE,CAAC;AAKZ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC;IACpC,2BAA2B;IAC3B,mBAAmB;IACnB,sBAAsB;IACtB,wBAAwB;IACxB,oBAAoB;IACpB,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,2BAA2B;IAC3B,uBAAuB;IACvB,yBAAyB;IACzB,0BAA0B;IAC1B,uBAAuB;IACvB,yBAAyB;IACzB,2BAA2B;IAC3B,yBAAyB;CAC1B,CAAC,CAAC;AAKH;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAwC,MAAM,CAAC,MAAM,CAAC;IACnF,yBAAyB,EAAE,kDAAkD;IAC7E,iBAAiB,EAAE,8BAA8B;IACjD,oBAAoB,EAClB,4GAA4G;QAC5G,yGAAyG;IAC3G,sBAAsB,EAAE,2BAA2B;IACnD,kBAAkB,EAAE,2BAA2B;IAC/C,sBAAsB,EAAE,oCAAoC;IAC5D,oBAAoB,EAAE,8DAA8D;IACpF,iBAAiB,EAAE,kCAAkC;IACrD,WAAW,EAAE,kCAAkC;IAC/C,cAAc,EAAE,kCAAkC;IAClD,cAAc,EAAE,+BAA+B;IAC/C,eAAe,EAAE,sCAAsC;IACvD,yBAAyB,EACvB,oFAAoF;QACpF,oDAAoD;IACtD,qBAAqB,EAAE,0BAA0B;IACjD,uBAAuB,EAAE,8CAA8C;IACvE,wBAAwB,EACtB,0GAA0G;IAC5G,qBAAqB,EACnB,yFAAyF;IAC3F,uBAAuB,EAAE,kEAAkE;IAC3F,yBAAyB,EACvB,wEAAwE;IAC1E,uBAAuB,EAAE,oDAAoD;CAC9E,CAAC,CAAC"}
1
+ {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/schemas/verdict.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,WAAW;IACX,SAAS;IACT,SAAS;IACT,cAAc;IACd,YAAY;IACZ,QAAQ;IACR,OAAO;CACR,CAAC,CAAC;AAKH,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,kEAAkE;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,uDAAuD;IACvD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,EAAE,cAAc;CACzB,CAAC;KACD,MAAM,EAAE,CAAC;AAKZ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC;IACpC,2BAA2B;IAC3B,mBAAmB;IACnB,sBAAsB;IACtB,wBAAwB;IACxB,oBAAoB;IACpB,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,2BAA2B;IAC3B,uBAAuB;IACvB,yBAAyB;IACzB,0BAA0B;IAC1B,uBAAuB;IACvB,yBAAyB;IACzB,2BAA2B;IAC3B,yBAAyB;IACzB,2BAA2B;IAC3B,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,2BAA2B;IAC3B,0BAA0B;IAC1B,8BAA8B;IAC9B,4BAA4B;IAC5B,iCAAiC;CAClC,CAAC,CAAC;AAKH;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAwC,MAAM,CAAC,MAAM,CAAC;IACnF,yBAAyB,EAAE,kDAAkD;IAC7E,iBAAiB,EAAE,8BAA8B;IACjD,oBAAoB,EAClB,6FAA6F;QAC7F,uCAAuC;IACzC,sBAAsB,EAAE,2BAA2B;IACnD,kBAAkB,EAAE,2BAA2B;IAC/C,sBAAsB,EACpB,yFAAyF;QACzF,uFAAuF;QACvF,uCAAuC;IACzC,oBAAoB,EAClB,yFAAyF;IAC3F,iBAAiB,EAAE,kCAAkC;IACrD,WAAW,EAAE,kCAAkC;IAC/C,cAAc,EAAE,kCAAkC;IAClD,cAAc,EAAE,+BAA+B;IAC/C,eAAe,EACb,sFAAsF;IACxF,yBAAyB,EACvB,oFAAoF;QACpF,oDAAoD;IACtD,qBAAqB,EAAE,0BAA0B;IACjD,uBAAuB,EAAE,8CAA8C;IACvE,wBAAwB,EACtB,0GAA0G;IAC5G,qBAAqB,EACnB,kFAAkF;QAClF,wCAAwC;IAC1C,uBAAuB,EAAE,kEAAkE;IAC3F,yBAAyB,EACvB,wEAAwE;IAC1E,uBAAuB,EAAE,oDAAoD;IAC7E,yBAAyB,EAAE,0DAA0D;IACrF,wBAAwB,EAAE,sCAAsC;IAChE,sBAAsB,EAAE,sDAAsD;IAC9E,qBAAqB,EAAE,+CAA+C;IACtE,yBAAyB,EAAE,6DAA6D;IACxF,wBAAwB,EAAE,mDAAmD;IAC7E,4BAA4B,EAAE,qDAAqD;IACnF,0BAA0B,EAAE,6BAA6B;IACzD,+BAA+B,EAAE,mCAAmC;CACrE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gate-runner.d.ts","sourceRoot":"","sources":["../../src/testing/gate-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gate-runner.d.ts","sourceRoot":"","sources":["../../src/testing/gate-runner.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  */
16
16
  import { randomUUID } from 'node:crypto';
17
17
  import { buildResourceGraph, compareStrings } from '../graph/index.js';
18
- import { fingerprint } from '../fingerprints.js';
18
+ import { fingerprintObligation } from '../fingerprints.js';
19
19
  import { evaluatePolicies } from '../policy/index.js';
20
20
  import { runClassification } from '../classifier/bind.js';
21
21
  import { RunManifestSchema } from '../schemas/run-manifest.js';
@@ -129,12 +129,7 @@ export function runGates(input) {
129
129
  resourceId: obligation.resourceId,
130
130
  contract: obligation.contract,
131
131
  policyId: obligation.policyId,
132
- fingerprint: fingerprint({
133
- resourceId: obligation.resourceId,
134
- contract: obligation.contract,
135
- policyId: obligation.policyId,
136
- lifecycle: obligation.lifecycle,
137
- }),
132
+ fingerprint: fingerprintObligation(obligation),
138
133
  verdict: outcome.verdict,
139
134
  reason: outcome.reason,
140
135
  recordIds: [...outcome.recordIds].sort(compareStrings),
@@ -1 +1 @@
1
- {"version":3,"file":"gate-runner.js","sourceRoot":"","sources":["../../src/testing/gate-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAU1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAK/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAyHhD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAC9E,CAAC;IAED,MAAM,aAAa,GAAqB,EAAE,CAAC;IAC3C,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,KAAK,MAAM,YAAY,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAC3C,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACrC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,mBAAmB,CAAC;YAChC,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;QACH,eAAe,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC,CAAC,CAAC;QACzG,aAAa,CAAC,IAAI,CAAC;YACjB,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,kEAAkE;YAClE,6DAA6D;YAC7D,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC5F,qBAAqB,EAAE,YAAY,CAAC,qBAAqB;YACzD,GAAG,CAAC,YAAY,CAAC,YAAY,KAAK,SAAS;gBACzC,CAAC,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC,YAAY,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,SAAS,EAAE,aAAa;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;IAC5F,oEAAoE;IACpE,qEAAqE;IACrE,iEAAiE;IACjE,MAAM,WAAW,GAAG,CAAC,MAA4B,EAAW,EAAE,CAC5D,CAAC,MAAM,CAAC,SAAS,KAAK,aAAa;QACjC,CAAC,MAAM,CAAC,KAAK,KAAK,aAAa,IAAI,MAAM,CAAC,KAAK,KAAK,qBAAqB,CAAC,CAAC;QAC7E,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,4BAA4B,CAAC,CAAC;IAC/F,oEAAoE;IACpE,oEAAoE;IACpE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,aAAa;SAC3B,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,KAAK,SAAS,CAAC;SACjE,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACtB,QAAQ,EAAE,YAAY,CAAC,UAAU;QACjC,YAAY,EAAE,YAAY,CAAC,YAAwB;KACpD,CAAC,CAAC,CAAC;IACN,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC;QAC5C,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzD,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QACtC,MAAM,EAAE,KAAK,CAAC,oBAAoB;QAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;QAC9B,IAAI,EAAE;YACJ,kEAAkE;YAClE,gEAAgE;YAChE,gDAAgD;YAChD,cAAc,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAC7E,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAC3E,QAAQ;YACR,mBAAmB,EAAE,aAAa,CAAC,MAAM;YACzC,mBAAmB,EAAE,aAAa,CAAC,MAAM;SAC1C;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,gBAAgB,CAAC;QAC9B,KAAK;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,aAAa,EAAE,QAAQ;KACxB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW;SAChC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE;YACzC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI;YAChD,GAAG;SACJ,CAAC,CAAC;QACH,OAAO;YACL,YAAY,EAAE,UAAU,CAAC,EAAE;YAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,WAAW,EAAE,WAAW,CAAC;gBACvB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,SAAS,EAAE,UAAU,CAAC,SAAS;aAChC,CAAC;YACF,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;SACvD,CAAC;IACJ,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC;QACvC,aAAa,EAAE,CAAC;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,UAAU,EAAE;QAClC,SAAS,EAAE,GAAG;QACd,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE;QAC5B,QAAQ,EAAE,KAAK,CAAC,eAAe,EAAE,QAAQ,IAAI,WAAW;QACxD,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC5C,EAAE,EAAE,YAAY,CAAC,UAAU;YAC3B,OAAO,EAAE,YAAY,CAAC,eAAe;YACrC,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,gBAAgB,EAAE,IAAI;KACvB,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACtC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,CAC7E,CAAC;IACF,OAAO;QACL,QAAQ;QACR,KAAK;QACL,MAAM;QACN,QAAQ;QACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,eAAe;QACf,YAAY,EAAE,KAAK,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE;QACzD,KAAK,EACH,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC5B,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACxB,eAAe,CAAC,MAAM,KAAK,CAAC;KAC/B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"gate-runner.js","sourceRoot":"","sources":["../../src/testing/gate-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import type { BehaviorCatalog } from '../schemas/behavior-catalog.js';
2
+ import type { Obligation } from '../schemas/obligation.js';
3
+ import type { HttpRouteCandidate } from './registry.js';
4
+ /** Strong HTTP contracts graded here (engine-http request actions). */
5
+ export declare const STRONG_HTTP_CONTRACTS: ReadonlySet<string>;
6
+ /** Authentication contracts graded here (Phase 7, same case machinery). */
7
+ export declare const AUTH_CONTRACTS: ReadonlySet<string>;
8
+ /** Validation contracts graded here (Phase 7, same case machinery). */
9
+ export declare const VALIDATION_CONTRACTS: ReadonlySet<string>;
10
+ /** Workflow contracts graded through authenticated behavior.case evidence. */
11
+ export declare const WORKFLOW_CONTRACTS: ReadonlySet<string>;
12
+ /** Task contracts graded through authenticated behavior.case evidence. */
13
+ export declare const TASK_CONTRACTS: ReadonlySet<string>;
14
+ /** Webhook contracts graded through authenticated behavior.case evidence. */
15
+ export declare const WEBHOOK_CONTRACTS: ReadonlySet<string>;
16
+ /** Every contract the required-case aggregation grades. */
17
+ export declare const BEHAVIOR_CASE_CONTRACTS: ReadonlySet<string>;
18
+ /** Trusted behavior slice of VerdictContext (controller-bound, never CLI config). */
19
+ export interface BehaviorObligationContext {
20
+ /** Compiled behavior catalog (case specs, effects, obligations). */
21
+ catalog: BehaviorCatalog;
22
+ /** obligationId → required caseIds (usually the catalog requirements). */
23
+ requirements: Record<string, string[]>;
24
+ /**
25
+ * Expected authority profile digest (engine bundle binding). When
26
+ * present the sealed value must equal it.
27
+ */
28
+ authorityProfileDigest?: string | null;
29
+ }
30
+ /** Trusted context for required-case grading (never record payloads). */
31
+ export interface BehaviorGradeContext {
32
+ /** Compiled behavior catalog (case specs, effects, obligations). */
33
+ catalog: BehaviorCatalog;
34
+ /** obligationId → required caseIds (usually the catalog requirements). */
35
+ requirements: Record<string, string[]>;
36
+ /**
37
+ * Expected authority profile digest (engine bundle binding). When
38
+ * present the sealed value must equal it; the CLI always provisions
39
+ * it from the trusted policy digest.
40
+ */
41
+ authorityProfileDigest?: string | null;
42
+ /** Allowed test identities (the obligation's declared claim testIds). */
43
+ plannedTestIds: readonly string[];
44
+ }
45
+ /** One ledger record view for required-case grading. */
46
+ export interface BehaviorRecordLike {
47
+ readonly recordId: unknown;
48
+ readonly testId: unknown;
49
+ readonly kind: unknown;
50
+ readonly origin: unknown;
51
+ readonly trust: unknown;
52
+ readonly payload: unknown;
53
+ }
54
+ /** Required-case aggregation outcome. */
55
+ export type RequiredCaseOutcome = {
56
+ status: 'satisfied';
57
+ recordIds: string[];
58
+ } | {
59
+ status: 'invalid';
60
+ reason: string;
61
+ recordIds: string[];
62
+ } | {
63
+ status: 'missing';
64
+ reason: string;
65
+ recordIds: string[];
66
+ };
67
+ /**
68
+ * Canonical digest over a case action descriptor. The witness seals
69
+ * this; the grader recomputes it from the compiled catalog — both use
70
+ * GF-canonical JSON, so equal actions hash equally on both sides.
71
+ */
72
+ export declare function behaviorActionDigestOf(action: unknown): string;
73
+ /**
74
+ * Aggregates the required cases of one obligation (plan §4.7): resolves
75
+ * the required set from trusted context, matches case records to
76
+ * allowed planned test identities, validates provenance and bindings,
77
+ * grades each case with the pure semantic rules, and requires every
78
+ * case to pass exactly once.
79
+ */
80
+ export declare function evaluateRequiredCases(input: {
81
+ obligation: Obligation;
82
+ requiredCaseIds: readonly string[];
83
+ records: readonly BehaviorRecordLike[];
84
+ context: BehaviorGradeContext;
85
+ httpRoutes: readonly HttpRouteCandidate[] | null | undefined;
86
+ }): RequiredCaseOutcome;
87
+ //# sourceMappingURL=behavior.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../../src/verdict/behavior.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,gCAAgC,CAAC;AAO5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,EAAE,WAAW,CAAC,MAAM,CAGpD,CAAC;AAEH,2EAA2E;AAC3E,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAM7C,CAAC;AAEH,uEAAuE;AACvE,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAMnD,CAAC;AAEH,8EAA8E;AAC9E,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAMjD,CAAC;AAEH,0EAA0E;AAC1E,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAM7C,CAAC;AAEH,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAMhD,CAAC;AAEH,2DAA2D;AAC3D,eAAO,MAAM,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAOtD,CAAC;AAEH,qFAAqF;AACrF,MAAM,WAAW,yBAAyB;IACxC,oEAAoE;IACpE,OAAO,EAAE,eAAe,CAAC;IACzB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,OAAO,EAAE,eAAe,CAAC;IACzB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,yEAAyE;IACzE,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,yCAAyC;AACzC,MAAM,MAAM,mBAAmB,GAC3B;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAC5C;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAC1D;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE9D;AAopBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACvC,OAAO,EAAE,oBAAoB,CAAC;IAC9B,UAAU,EAAE,SAAS,kBAAkB,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;CAC9D,GAAG,mBAAmB,CA8BtB"}