@principles/core 1.154.0 → 1.156.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 (97) hide show
  1. package/dist/runtime-v2/__tests__/architecture-regression.test.js +10 -0
  2. package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  3. package/dist/runtime-v2/__tests__/build-l2-principle-reader.test.d.ts +2 -0
  4. package/dist/runtime-v2/__tests__/build-l2-principle-reader.test.d.ts.map +1 -0
  5. package/dist/runtime-v2/__tests__/build-l2-principle-reader.test.js +200 -0
  6. package/dist/runtime-v2/__tests__/build-l2-principle-reader.test.js.map +1 -0
  7. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js +16 -0
  8. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js.map +1 -1
  9. package/dist/runtime-v2/__tests__/evaluator-runner-vslice.test.js +2 -0
  10. package/dist/runtime-v2/__tests__/evaluator-runner-vslice.test.js.map +1 -1
  11. package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +13 -0
  12. package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
  13. package/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js +1 -0
  14. package/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js.map +1 -1
  15. package/dist/runtime-v2/activation/__tests__/approval-completion-service.test.d.ts +21 -0
  16. package/dist/runtime-v2/activation/__tests__/approval-completion-service.test.d.ts.map +1 -0
  17. package/dist/runtime-v2/activation/__tests__/approval-completion-service.test.js +363 -0
  18. package/dist/runtime-v2/activation/__tests__/approval-completion-service.test.js.map +1 -0
  19. package/dist/runtime-v2/activation/__tests__/approval-queue.test.js +13 -0
  20. package/dist/runtime-v2/activation/__tests__/approval-queue.test.js.map +1 -1
  21. package/dist/runtime-v2/activation/__tests__/edit-then-approve.test.d.ts +20 -0
  22. package/dist/runtime-v2/activation/__tests__/edit-then-approve.test.d.ts.map +1 -0
  23. package/dist/runtime-v2/activation/__tests__/edit-then-approve.test.js +145 -0
  24. package/dist/runtime-v2/activation/__tests__/edit-then-approve.test.js.map +1 -0
  25. package/dist/runtime-v2/activation/__tests__/production-gate-deps.test.d.ts +15 -0
  26. package/dist/runtime-v2/activation/__tests__/production-gate-deps.test.d.ts.map +1 -0
  27. package/dist/runtime-v2/activation/__tests__/production-gate-deps.test.js +249 -0
  28. package/dist/runtime-v2/activation/__tests__/production-gate-deps.test.js.map +1 -0
  29. package/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js +22 -2
  30. package/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js.map +1 -1
  31. package/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.d.ts +35 -0
  32. package/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.d.ts.map +1 -0
  33. package/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js +511 -0
  34. package/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js.map +1 -0
  35. package/dist/runtime-v2/activation/activation-dispatcher.d.ts.map +1 -1
  36. package/dist/runtime-v2/activation/activation-dispatcher.js +79 -0
  37. package/dist/runtime-v2/activation/activation-dispatcher.js.map +1 -1
  38. package/dist/runtime-v2/activation/activation-types.d.ts +48 -3
  39. package/dist/runtime-v2/activation/activation-types.d.ts.map +1 -1
  40. package/dist/runtime-v2/activation/activation-types.js +6 -0
  41. package/dist/runtime-v2/activation/activation-types.js.map +1 -1
  42. package/dist/runtime-v2/activation/approval-completion-service.d.ts +50 -0
  43. package/dist/runtime-v2/activation/approval-completion-service.d.ts.map +1 -0
  44. package/dist/runtime-v2/activation/approval-completion-service.js +160 -0
  45. package/dist/runtime-v2/activation/approval-completion-service.js.map +1 -0
  46. package/dist/runtime-v2/activation/approval-queue.d.ts +7 -1
  47. package/dist/runtime-v2/activation/approval-queue.d.ts.map +1 -1
  48. package/dist/runtime-v2/activation/approval-queue.js +14 -0
  49. package/dist/runtime-v2/activation/approval-queue.js.map +1 -1
  50. package/dist/runtime-v2/activation/index.d.ts +5 -2
  51. package/dist/runtime-v2/activation/index.d.ts.map +1 -1
  52. package/dist/runtime-v2/activation/index.js +8 -1
  53. package/dist/runtime-v2/activation/index.js.map +1 -1
  54. package/dist/runtime-v2/activation/memory-activation-state-store.d.ts +2 -2
  55. package/dist/runtime-v2/activation/memory-activation-state-store.d.ts.map +1 -1
  56. package/dist/runtime-v2/activation/memory-activation-state-store.js +4 -4
  57. package/dist/runtime-v2/activation/memory-activation-state-store.js.map +1 -1
  58. package/dist/runtime-v2/activation/memory-approval-store.d.ts +2 -1
  59. package/dist/runtime-v2/activation/memory-approval-store.d.ts.map +1 -1
  60. package/dist/runtime-v2/activation/memory-approval-store.js +18 -0
  61. package/dist/runtime-v2/activation/memory-approval-store.js.map +1 -1
  62. package/dist/runtime-v2/activation/production-gate-deps.d.ts +32 -0
  63. package/dist/runtime-v2/activation/production-gate-deps.d.ts.map +1 -0
  64. package/dist/runtime-v2/activation/production-gate-deps.js +179 -0
  65. package/dist/runtime-v2/activation/production-gate-deps.js.map +1 -0
  66. package/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts +2 -2
  67. package/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts.map +1 -1
  68. package/dist/runtime-v2/activation/sqlite-activation-state-store.js +10 -14
  69. package/dist/runtime-v2/activation/sqlite-activation-state-store.js.map +1 -1
  70. package/dist/runtime-v2/activation/sqlite-approval-store.d.ts +2 -1
  71. package/dist/runtime-v2/activation/sqlite-approval-store.d.ts.map +1 -1
  72. package/dist/runtime-v2/activation/sqlite-approval-store.js +24 -0
  73. package/dist/runtime-v2/activation/sqlite-approval-store.js.map +1 -1
  74. package/dist/runtime-v2/build-l2-principle-reader.d.ts +49 -0
  75. package/dist/runtime-v2/build-l2-principle-reader.d.ts.map +1 -0
  76. package/dist/runtime-v2/build-l2-principle-reader.js +70 -0
  77. package/dist/runtime-v2/build-l2-principle-reader.js.map +1 -0
  78. package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +2 -0
  79. package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
  80. package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  81. package/dist/runtime-v2/feature-flags/feature-flag-contract.js +6 -0
  82. package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  83. package/dist/runtime-v2/index.d.ts +5 -3
  84. package/dist/runtime-v2/index.d.ts.map +1 -1
  85. package/dist/runtime-v2/index.js +6 -1
  86. package/dist/runtime-v2/index.js.map +1 -1
  87. package/dist/runtime-v2/internalization/evaluator-runner.d.ts +27 -0
  88. package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  89. package/dist/runtime-v2/internalization/evaluator-runner.js +129 -2
  90. package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  91. package/dist/runtime-v2/proven-channel-baseline.d.ts.map +1 -1
  92. package/dist/runtime-v2/proven-channel-baseline.js +13 -0
  93. package/dist/runtime-v2/proven-channel-baseline.js.map +1 -1
  94. package/dist/runtime-v2/store/sqlite-connection.d.ts.map +1 -1
  95. package/dist/runtime-v2/store/sqlite-connection.js +12 -0
  96. package/dist/runtime-v2/store/sqlite-connection.js.map +1 -1
  97. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"memory-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/memory-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAM/B,qBAAa,wBAAyB,YAAW,kBAAkB;IACjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;IAEvD,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAsB1E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAI3D,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU/D,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAe/D,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAUvC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiB9F,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiB9F,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAA;KAAE,CAAC;CAcrH"}
1
+ {"version":3,"file":"memory-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/memory-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAM/B,qBAAa,wBAAyB,YAAW,kBAAkB;IACjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;IAEvD,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAsB1E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAI3D,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU/D,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAe/D,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAUvC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiB9F,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiB9F,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAA;KAAE,CAAC;IAe9G,IAAI,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAiBtE"}
@@ -114,5 +114,23 @@ export class MemoryApprovalQueueStore {
114
114
  this.records.set(approvalId, reset);
115
115
  return { ok: true };
116
116
  }
117
+ async edit(input) {
118
+ const existing = this.records.get(input.approvalId);
119
+ if (!existing)
120
+ return { ok: false, error: 'not_found' };
121
+ if (existing.status !== 'pending') {
122
+ return { ok: false, error: 'already_decided', status: existing.status };
123
+ }
124
+ const updated = {
125
+ ...existing,
126
+ artifactId: input.newArtifactId,
127
+ editedAt: input.now,
128
+ editedBy: input.editedBy,
129
+ editReason: input.editReason,
130
+ previousArtifactId: existing.artifactId,
131
+ };
132
+ this.records.set(input.approvalId, updated);
133
+ return { ok: true, record: updated };
134
+ }
117
135
  }
118
136
  //# sourceMappingURL=memory-approval-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/memory-approval-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/memory-approval-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Production Gate Deps Factory — Story A (PRI-408)
3
+ *
4
+ * PURPOSE: Provide a production-grade RefinerRuleHostGateDeps factory that
5
+ * compiles rule implementation code using node:vm and evaluates it against
6
+ * golden traces via evaluateInRefinerSandbox. This is the canonical
7
+ * production compilation path — not a demo duplicate.
8
+ *
9
+ * ARCHITECTURE: This lives in principles-core because:
10
+ * 1. node:vm is a pure computation primitive (no fs/network/db I/O)
11
+ * 2. principles-core already uses node:crypto (randomUUID, createHash)
12
+ * 3. Both pd-cli (compileDemoRule) and openclaw-plugin
13
+ * (loadRuleImplementationModule) duplicate this logic — placing it
14
+ * here eliminates duplication and makes it available to all packages
15
+ * that depend on @principles/core (including pd-console).
16
+ *
17
+ * ERR checklist:
18
+ * - ERR-001: Rule code is string-validated before compilation
19
+ * - ERR-002: Compilation failures produce structured error results
20
+ * - ERR-005: Module exports validated with typeof checks, not `as`
21
+ */
22
+ import type { RefinerRuleHostGateDeps } from '../internalization/refiner-rulehost-gate.js';
23
+ /**
24
+ * Create a production-grade RefinerRuleHostGateDeps that compiles rule code
25
+ * using node:vm and evaluates it against golden traces.
26
+ *
27
+ * This factory is the canonical production gateDeps provider. It replaces
28
+ * the demo-only createSandboxGateDeps() in pd-cli and makes the gateDeps
29
+ * available to all packages that depend on @principles/core.
30
+ */
31
+ export declare function createProductionGateDeps(): RefinerRuleHostGateDeps;
32
+ //# sourceMappingURL=production-gate-deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"production-gate-deps.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/production-gate-deps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAOH,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,6CAA6C,CAAC;AAmIrD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,uBAAuB,CAgDlE"}
@@ -0,0 +1,179 @@
1
+ /**
2
+ * Production Gate Deps Factory — Story A (PRI-408)
3
+ *
4
+ * PURPOSE: Provide a production-grade RefinerRuleHostGateDeps factory that
5
+ * compiles rule implementation code using node:vm and evaluates it against
6
+ * golden traces via evaluateInRefinerSandbox. This is the canonical
7
+ * production compilation path — not a demo duplicate.
8
+ *
9
+ * ARCHITECTURE: This lives in principles-core because:
10
+ * 1. node:vm is a pure computation primitive (no fs/network/db I/O)
11
+ * 2. principles-core already uses node:crypto (randomUUID, createHash)
12
+ * 3. Both pd-cli (compileDemoRule) and openclaw-plugin
13
+ * (loadRuleImplementationModule) duplicate this logic — placing it
14
+ * here eliminates duplication and makes it available to all packages
15
+ * that depend on @principles/core (including pd-console).
16
+ *
17
+ * ERR checklist:
18
+ * - ERR-001: Rule code is string-validated before compilation
19
+ * - ERR-002: Compilation failures produce structured error results
20
+ * - ERR-005: Module exports validated with typeof checks, not `as`
21
+ */
22
+ import * as vm from 'node:vm';
23
+ import { evaluateInRefinerSandbox } from '../internalization/refiner-sandbox-wrapper.js';
24
+ import { checkForbiddenPatterns } from '../internalization/rule-code-validator.js';
25
+ import { validateCorrectionProposal } from '../internalization/correction-proposal.js';
26
+ import { safeStringifyPreview } from '../feedback/safe-stringify.js';
27
+ /**
28
+ * Valid decision enum values for RuleHostResult.
29
+ * Used to validate untrusted vm sandbox output (P2 #6 fix).
30
+ */
31
+ const VALID_DECISIONS = new Set(['allow', 'block', 'requireApproval', 'auto_correct']);
32
+ /**
33
+ * Type guard: validate that a value from the untrusted vm sandbox has the
34
+ * full RuleHostResult shape. Treats all sandbox output as unknown.
35
+ *
36
+ * P2 #6 fix: previously the code only checked `decision` was a string, then
37
+ * used `as RuleHostResult` to accept the entire object. This bypassed
38
+ * validation of the decision enum value and other required fields.
39
+ */
40
+ function isValidRuleHostResult(value) {
41
+ if (typeof value !== 'object' || value === null)
42
+ return false;
43
+ // decision: required, must be one of the 4 valid enum values
44
+ const decision = Reflect.get(value, 'decision');
45
+ if (typeof decision !== 'string' || !VALID_DECISIONS.has(decision)) {
46
+ return false;
47
+ }
48
+ // matched: required, must be a boolean
49
+ const matched = Reflect.get(value, 'matched');
50
+ if (typeof matched !== 'boolean')
51
+ return false;
52
+ // reason: required, must be a string
53
+ const reason = Reflect.get(value, 'reason');
54
+ if (typeof reason !== 'string')
55
+ return false;
56
+ // When decision is 'auto_correct', correctionProposal must be present
57
+ // AND pass full structural validation (P2 #6 fix: previously only checked
58
+ // presence + typeof object, allowing malformed proposals with missing
59
+ // required fields like proposedParams, correctedFields, applicationMode,
60
+ // confidence, ruleId, notifyAgent to flow into the activation path).
61
+ if (decision === 'auto_correct') {
62
+ const correctionProposal = Reflect.get(value, 'correctionProposal');
63
+ if (correctionProposal === undefined || correctionProposal === null) {
64
+ return false;
65
+ }
66
+ const proposalValidation = validateCorrectionProposal(correctionProposal);
67
+ if (!proposalValidation.valid) {
68
+ return false;
69
+ }
70
+ }
71
+ return true;
72
+ }
73
+ /**
74
+ * Normalize rule source code: strip ES module export keywords so the code
75
+ * can be evaluated in a vm context (which doesn't support ESM exports).
76
+ */
77
+ function normalizeSource(sourceCode) {
78
+ const withoutExports = sourceCode
79
+ .replace(/export\s+const\s+meta\s*=/, 'const meta =')
80
+ .replace(/export\s+function\s+evaluate\s*\(/, 'function evaluate(');
81
+ return `${withoutExports}
82
+ globalThis.__pdRuleModule = {
83
+ meta: typeof meta === 'undefined' ? undefined : meta,
84
+ evaluate: typeof evaluate === 'undefined' ? undefined : evaluate,
85
+ };`;
86
+ }
87
+ /**
88
+ * Type guard: validate that a value from the untrusted vm sandbox has the
89
+ * expected CompiledModuleExports shape. Treats all sandbox output as unknown.
90
+ */
91
+ function isCompiledModuleExports(value) {
92
+ return typeof value === 'object' && value !== null;
93
+ }
94
+ /**
95
+ * Compile rule implementation code in a node:vm sandbox and return a typed
96
+ * evaluate function. Mirrors the compilation logic used by the production
97
+ * openclaw-plugin RuleHost (rule-implementation-runtime.ts).
98
+ *
99
+ * @throws if the code fails to compile or does not define a function evaluate
100
+ */
101
+ function compileRuleCode(code, sourceLabel) {
102
+ if (typeof code !== 'string' || code.trim().length === 0) {
103
+ throw new Error(`[${sourceLabel}] rule code is empty or not a string`);
104
+ }
105
+ const context = vm.createContext(Object.create(null));
106
+ const script = new vm.Script(normalizeSource(code), { filename: sourceLabel });
107
+ script.runInContext(context, { timeout: 1000, displayErrors: true });
108
+ // Treat sandbox output as untrusted — use Reflect.get + type guard, not `as`.
109
+ const moduleExportsUnknown = Reflect.get(context, '__pdRuleModule');
110
+ Reflect.deleteProperty(context, '__pdRuleModule');
111
+ if (!isCompiledModuleExports(moduleExportsUnknown)) {
112
+ throw new Error(`[${sourceLabel}] compiled module export shape is invalid`);
113
+ }
114
+ const evaluateFn = moduleExportsUnknown.evaluate;
115
+ if (typeof evaluateFn !== 'function') {
116
+ throw new Error(`[${sourceLabel}] compiled module has no evaluate function`);
117
+ }
118
+ return (input, helpers) => {
119
+ const result = Reflect.apply(evaluateFn, undefined, [input, helpers]);
120
+ // P2 #6 fix: validate the full RuleHostResult shape, not just `decision` is a string.
121
+ // Previously used `as RuleHostResult` which bypassed enum + required field validation.
122
+ if (!isValidRuleHostResult(result)) {
123
+ throw new Error(`[${sourceLabel}]: evaluate returned invalid RuleHostResult (got ${typeof result === 'object' && result !== null ? safeStringifyPreview(result) : String(result)})`);
124
+ }
125
+ return result;
126
+ };
127
+ }
128
+ /**
129
+ * Create a production-grade RefinerRuleHostGateDeps that compiles rule code
130
+ * using node:vm and evaluates it against golden traces.
131
+ *
132
+ * This factory is the canonical production gateDeps provider. It replaces
133
+ * the demo-only createSandboxGateDeps() in pd-cli and makes the gateDeps
134
+ * available to all packages that depend on @principles/core.
135
+ */
136
+ export function createProductionGateDeps() {
137
+ return {
138
+ evaluateInSandbox: (code, goldenTrace, opts) => {
139
+ const startTime = Date.now();
140
+ // P2 #6 fix: check forbidden patterns BEFORE compilation/execution.
141
+ // Previously, compileRuleCode() executed the code via script.runInContext()
142
+ // and only then did evaluateInRefinerSandbox() check forbidden patterns —
143
+ // meaning malicious code (e.g. require('child_process')) would execute
144
+ // before being rejected. The check must happen on the source string
145
+ // before any vm execution.
146
+ const forbiddenViolations = checkForbiddenPatterns(code);
147
+ if (forbiddenViolations.length > 0) {
148
+ return {
149
+ success: false,
150
+ failedCases: [],
151
+ executionTimeMs: Date.now() - startTime,
152
+ forbiddenPatternViolations: forbiddenViolations,
153
+ };
154
+ }
155
+ let evaluateCode;
156
+ try {
157
+ evaluateCode = compileRuleCode(code, 'production-gate-deps');
158
+ }
159
+ catch (err) {
160
+ const message = err instanceof Error ? err.message : String(err);
161
+ return {
162
+ success: false,
163
+ failedCases: [{
164
+ caseId: '__compile__',
165
+ errorType: 'syntax_error',
166
+ message,
167
+ }],
168
+ executionTimeMs: Date.now() - startTime,
169
+ forbiddenPatternViolations: [],
170
+ };
171
+ }
172
+ return evaluateInRefinerSandbox(code, goldenTrace, {
173
+ evaluateCode,
174
+ ...opts,
175
+ });
176
+ },
177
+ };
178
+ }
179
+ //# sourceMappingURL=production-gate-deps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"production-gate-deps.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/production-gate-deps.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ export declare class SqliteActivationStateStore implements ActivationStateReadMo
5
5
  constructor(connection: SqliteConnection);
6
6
  getActivationStatus(idempotencyKey: string): Promise<ActivationStatusRecord | null>;
7
7
  recordActivation(record: ActivationStatusRecord): Promise<void>;
8
- listPromptActivations(): Promise<ActivationStatusRecord[]>;
9
- listCodeToolHookActivations(): Promise<ActivationStatusRecord[]>;
8
+ listPromptActivations(includeDeactivated?: boolean): Promise<ActivationStatusRecord[]>;
9
+ listCodeToolHookActivations(includeDeactivated?: boolean): Promise<ActivationStatusRecord[]>;
10
10
  listAllActivations(): Promise<ActivationStatusRecord[]>;
11
11
  deactivateActivation(activationId: string, deactivatedAt: string): Promise<boolean>;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-activation-state-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAoDtE,qBAAa,0BAA2B,YAAW,wBAAwB;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAWnF,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/D,qBAAqB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAmB1D,2BAA2B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAmBhE,kBAAkB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAkBvD,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS1F"}
1
+ {"version":3,"file":"sqlite-activation-state-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAoDtE,qBAAa,0BAA2B,YAAW,wBAAwB;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAWnF,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/D,qBAAqB,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAiBpF,2BAA2B,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAiB1F,kBAAkB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAkBvD,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS1F"}
@@ -67,14 +67,12 @@ export class SqliteActivationStateStore {
67
67
  (?, ?, ?, ?, ?, ?, ?, ?)
68
68
  `).run(record.activationId, record.idempotencyKey, record.artifactId, record.channel, record.action, record.targetRef, record.activatedAt, record.deactivatedAt);
69
69
  }
70
- async listPromptActivations() {
70
+ async listPromptActivations(includeDeactivated = false) {
71
71
  const db = this.connection.getDb();
72
- const rows = db.prepare(`
73
- SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at
74
- FROM activations
75
- WHERE channel = 'prompt' AND deactivated_at IS NULL
76
- ORDER BY activated_at ASC
77
- `).all();
72
+ const sql = includeDeactivated
73
+ ? `SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at FROM activations WHERE channel = 'prompt' ORDER BY activated_at ASC`
74
+ : `SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at FROM activations WHERE channel = 'prompt' AND deactivated_at IS NULL ORDER BY activated_at ASC`;
75
+ const rows = db.prepare(sql).all();
78
76
  if (!Array.isArray(rows))
79
77
  return [];
80
78
  const result = [];
@@ -85,14 +83,12 @@ export class SqliteActivationStateStore {
85
83
  }
86
84
  return result;
87
85
  }
88
- async listCodeToolHookActivations() {
86
+ async listCodeToolHookActivations(includeDeactivated = false) {
89
87
  const db = this.connection.getDb();
90
- const rows = db.prepare(`
91
- SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at
92
- FROM activations
93
- WHERE channel = 'code_tool_hook' AND deactivated_at IS NULL
94
- ORDER BY activated_at ASC
95
- `).all();
88
+ const sql = includeDeactivated
89
+ ? `SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at FROM activations WHERE channel = 'code_tool_hook' ORDER BY activated_at ASC`
90
+ : `SELECT activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at FROM activations WHERE channel = 'code_tool_hook' AND deactivated_at IS NULL ORDER BY activated_at ASC`;
91
+ const rows = db.prepare(sql).all();
96
92
  if (!Array.isArray(rows))
97
93
  return [];
98
94
  const result = [];
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-activation-state-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-activation-state-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ApprovalDecisionResult, ApprovalEnqueueInput, ApprovalFilter, ApprovalListFilter, ApprovalQueueStore, ApprovalRecord, ApprovalStats } from './activation-types.js';
1
+ import type { ApprovalDecisionResult, ApprovalEditInput, ApprovalEnqueueInput, ApprovalFilter, ApprovalListFilter, ApprovalQueueStore, ApprovalRecord, ApprovalStats } from './activation-types.js';
2
2
  import type { SqliteConnection } from '../store/sqlite-connection.js';
3
3
  export declare class SqliteApprovalQueueStore implements ApprovalQueueStore {
4
4
  private readonly connection;
@@ -16,5 +16,6 @@ export declare class SqliteApprovalQueueStore implements ApprovalQueueStore {
16
16
  ok: false;
17
17
  error: 'not_found' | 'not_approved';
18
18
  }>;
19
+ edit(input: ApprovalEditInput): Promise<ApprovalDecisionResult>;
19
20
  }
20
21
  //# sourceMappingURL=sqlite-approval-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAId,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA8CtE,qBAAa,wBAAyB,YAAW,kBAAkB;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA2B1E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAM3D,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU/D,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAoB/D,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAUvC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAA;KAAE,CAAC;CAQrH"}
1
+ {"version":3,"file":"sqlite-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAId,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAsDtE,qBAAa,wBAAyB,YAAW,kBAAkB;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA2B1E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAM3D,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU/D,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAoB/D,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAUvC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAA;KAAE,CAAC;IAS9G,IAAI,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAoBtE"}
@@ -16,6 +16,10 @@ function rowToRecord(row) {
16
16
  confidenceExplanation: row.confidence_explanation ?? undefined,
17
17
  effectDescription: row.effect_description ?? undefined,
18
18
  rejectionEffect: row.rejection_effect ?? undefined,
19
+ editedAt: row.edited_at ?? undefined,
20
+ editedBy: row.edited_by ?? undefined,
21
+ editReason: row.edit_reason ?? undefined,
22
+ previousArtifactId: row.previous_artifact_id ?? undefined,
19
23
  };
20
24
  }
21
25
  function makeApprovalId(artifactId, channel) {
@@ -144,5 +148,25 @@ export class SqliteApprovalQueueStore {
144
148
  db.prepare("UPDATE approvals SET status = 'pending', decided_at = NULL, decided_by = NULL, decision_note = NULL WHERE approval_id = ? AND status = 'approved'").run(approvalId);
145
149
  return { ok: true };
146
150
  }
151
+ async edit(input) {
152
+ const db = this.connection.getDb();
153
+ const existing = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(input.approvalId);
154
+ if (!existing)
155
+ return { ok: false, error: 'not_found' };
156
+ if (existing.status !== 'pending') {
157
+ return { ok: false, error: 'already_decided', status: existing.status };
158
+ }
159
+ // Atomic UPDATE: derive previous_artifact_id from the current DB value
160
+ // to prevent lineage drift during concurrent edits (ERR-004/ERR-008).
161
+ const updateResult = db.prepare("UPDATE approvals SET previous_artifact_id = artifact_id, artifact_id = ?, edited_at = ?, edited_by = ?, edit_reason = ? WHERE approval_id = ? AND status = 'pending'").run(input.newArtifactId, input.now, input.editedBy, input.editReason, input.approvalId);
162
+ if (updateResult.changes === 0) {
163
+ const fresh = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(input.approvalId);
164
+ if (!fresh)
165
+ return { ok: false, error: 'not_found' };
166
+ return { ok: false, error: 'already_decided', status: fresh.status };
167
+ }
168
+ const row = db.prepare('SELECT * FROM approvals WHERE approval_id = ?').get(input.approvalId);
169
+ return { ok: true, record: rowToRecord(row) };
170
+ }
147
171
  }
148
172
  //# sourceMappingURL=sqlite-approval-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAiCA,SAAS,WAAW,CAAC,GAAgB;IACnC,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,OAAO,EAAE,GAAG,CAAC,OAAiC;QAC9C,SAAS,EAAE,GAAG,CAAC,UAAiC;QAChD,MAAM,EAAE,GAAG,CAAC,MAAwB;QACpC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACvC,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACtC,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACtC,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,SAAS;QAC5C,eAAe,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;QAClD,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,SAAS;QACjC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;QAC9C,qBAAqB,EAAE,GAAG,CAAC,sBAAsB,IAAI,SAAS;QAC9D,iBAAiB,EAAE,GAAG,CAAC,kBAAkB,IAAI,SAAS;QACtD,eAAe,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,UAAkB,EAAE,OAA+B;IACzE,OAAO,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC;AAC7C,CAAC;AAED,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAG,CAAC;IAE7D,KAAK,CAAC,OAAO,CAAC,KAA2B,EAAE,GAAW;QACpD,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,OAAO,CACR,iCAAiC;YAC/B,oFAAoF;YACpF,yFAAyF;YACzF,8CAA8C,CACjD,CAAC,GAAG,CACH,UAAU,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,EACf,SAAS,EACT,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,GAAG,EACH,KAAK,CAAC,OAAO,IAAI,IAAI,EACrB,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,qBAAqB,IAAI,IAAI,EACnC,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAC/B,KAAK,CAAC,eAAe,IAAI,IAAI,CAC9B,CAAC;QACF,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAA4B,CAAC;QACnH,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,UAAU,CAAC,CAAC;QAC1F,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAkB;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAA4B,CAAC;QACnH,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAuB;QACvC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,GAAG,GAAG,kDAAkD,CAAC;QAC7D,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YAAC,GAAG,IAAI,kBAAkB,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAChF,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;YAAC,GAAG,IAAI,qBAAqB,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;QACvF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAkB,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QAClF,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACrF,IAAI,GAAG,GAAG,yBAAyB,CAAC;QACpC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAAC,GAAG,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAC3E,GAAG,IAAI,6BAA6B,CAAC;QACrC,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;QACvC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;YACrC,GAAG,IAAI,mBAAmB,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAkB,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC,GAAG,EAAuC,CAAC;QACpI,MAAM,KAAK,GAAkB,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QACpF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;gBAAC,KAAK,CAAC,GAAG,CAAC,MAA6B,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC;YAAC,CAAC;QAClF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAkB,EAAE,SAAiB,EAAE,IAAa;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;QACpI,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAwB,EAAE,CAAC;QAAC,CAAC;QACjI,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC,0IAA0I,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI,IAAI,EAAE,UAAU,CAAC,CAAC;QAC1N,IAAI,YAAY,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;YACjI,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAwB,EAAE,CAAC;QACzF,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAAgB,CAAC;QACvG,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,SAAiB,EAAE,MAAc;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;QACpI,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAwB,EAAE,CAAC;QAAC,CAAC;QACjI,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC,6IAA6I,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QACvN,IAAI,YAAY,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;YACjI,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAwB,EAAE,CAAC;QACzF,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAAgB,CAAC;QACvG,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAkB;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;QACpI,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAChF,EAAE,CAAC,OAAO,CAAC,mJAAmJ,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChL,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"sqlite-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * PRI-431: Shared L2 principle reader extracted from duplicated `makeDreamerPrincipleReader`.
3
+ *
4
+ * Previously duplicated verbatim in:
5
+ * - packages/pd-cli/src/commands/runtime-internalization-run-once.ts (L226-243)
6
+ * - packages/openclaw-plugin/src/service/internalization-auto-consumer-service.ts (L179-193)
7
+ *
8
+ * This module is pure logic: the ledger data is injected via parameter, not loaded
9
+ * from disk. Callers in pd-cli/openclaw-plugin handle file I/O and pass the
10
+ * already-loaded ledger to `buildL2PrincipleReaderFromLedger()`.
11
+ *
12
+ * `buildL2PrincipleReader()` remains as a convenience wrapper that accepts
13
+ * `stateDir` and calls `loadLedger()` internally — it is re-exported from
14
+ * pd-cli/openclaw-plugin but NOT from the core index barrel, keeping core
15
+ * I/O-free in its public API.
16
+ */
17
+ import type { PdL2PrincipleReader } from './tools/agent-tool-contract.js';
18
+ export interface BuildL2PrincipleReaderOptions {
19
+ /** Custom logger for degradation warnings. Defaults to console.warn. */
20
+ logger?: {
21
+ warn: (message: string) => void;
22
+ };
23
+ }
24
+ /**
25
+ * Build a read-only principle reader from an already-loaded ledger object.
26
+ * This is the pure-logic entry point — no file I/O.
27
+ *
28
+ * Returns active internalized principles (id + statement).
29
+ * Degrades to empty on malformed ledger (Runtime Contract R9).
30
+ */
31
+ export declare function buildL2PrincipleReaderFromLedger(ledger: {
32
+ tree: {
33
+ principles?: Record<string, {
34
+ status?: string;
35
+ id?: string;
36
+ text?: string;
37
+ }>;
38
+ };
39
+ }, opts?: BuildL2PrincipleReaderOptions): PdL2PrincipleReader;
40
+ /**
41
+ * Build a read-only principle reader from the workspace ledger.
42
+ * Convenience wrapper that loads the ledger from disk.
43
+ *
44
+ * NOTE: This function performs file I/O via `loadLedger()`. It is intended
45
+ * for use by pd-cli and openclaw-plugin callers. It is NOT re-exported from
46
+ * the core barrel (index.ts) to keep core's public API I/O-free.
47
+ */
48
+ export declare function buildL2PrincipleReader(stateDir: string, opts?: BuildL2PrincipleReaderOptions): PdL2PrincipleReader;
49
+ //# sourceMappingURL=build-l2-principle-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-l2-principle-reader.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/build-l2-principle-reader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,WAAW,6BAA6B;IAC5C,wEAAwE;IACxE,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC;CAC9C;AAED;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE;IAAE,IAAI,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,EAAE,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAA;CAAE,EAClG,IAAI,CAAC,EAAE,6BAA6B,GACnC,mBAAmB,CAuBrB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,6BAA6B,GACnC,mBAAmB,CAUrB"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * PRI-431: Shared L2 principle reader extracted from duplicated `makeDreamerPrincipleReader`.
3
+ *
4
+ * Previously duplicated verbatim in:
5
+ * - packages/pd-cli/src/commands/runtime-internalization-run-once.ts (L226-243)
6
+ * - packages/openclaw-plugin/src/service/internalization-auto-consumer-service.ts (L179-193)
7
+ *
8
+ * This module is pure logic: the ledger data is injected via parameter, not loaded
9
+ * from disk. Callers in pd-cli/openclaw-plugin handle file I/O and pass the
10
+ * already-loaded ledger to `buildL2PrincipleReaderFromLedger()`.
11
+ *
12
+ * `buildL2PrincipleReader()` remains as a convenience wrapper that accepts
13
+ * `stateDir` and calls `loadLedger()` internally — it is re-exported from
14
+ * pd-cli/openclaw-plugin but NOT from the core index barrel, keeping core
15
+ * I/O-free in its public API.
16
+ */
17
+ import { loadLedger } from '../principle-tree-ledger.js';
18
+ /**
19
+ * Build a read-only principle reader from an already-loaded ledger object.
20
+ * This is the pure-logic entry point — no file I/O.
21
+ *
22
+ * Returns active internalized principles (id + statement).
23
+ * Degrades to empty on malformed ledger (Runtime Contract R9).
24
+ */
25
+ export function buildL2PrincipleReaderFromLedger(ledger, opts) {
26
+ const warn = opts?.logger?.warn ?? ((msg) => console.warn(msg));
27
+ return {
28
+ listActivePrinciples: async () => {
29
+ try {
30
+ const principles = ledger.tree.principles ?? {};
31
+ const active = Object.values(principles).filter((p) => {
32
+ if (p.status !== 'active')
33
+ return false;
34
+ if (typeof p.id !== 'string' || typeof p.text !== 'string' || p.text.length === 0) {
35
+ warn(`[l2_dreamer] skipping active principle with missing id or empty text: ${JSON.stringify(p).slice(0, 120)}`);
36
+ return false;
37
+ }
38
+ return true;
39
+ });
40
+ return active.map((p) => ({ id: p.id, statement: p.text }));
41
+ }
42
+ catch (error) {
43
+ const reason = error instanceof Error ? error.message : String(error);
44
+ warn(`[l2_dreamer] listActivePrinciples degraded — no internalized principles loaded: ${reason}`);
45
+ return [];
46
+ }
47
+ },
48
+ };
49
+ }
50
+ /**
51
+ * Build a read-only principle reader from the workspace ledger.
52
+ * Convenience wrapper that loads the ledger from disk.
53
+ *
54
+ * NOTE: This function performs file I/O via `loadLedger()`. It is intended
55
+ * for use by pd-cli and openclaw-plugin callers. It is NOT re-exported from
56
+ * the core barrel (index.ts) to keep core's public API I/O-free.
57
+ */
58
+ export function buildL2PrincipleReader(stateDir, opts) {
59
+ try {
60
+ const ledger = loadLedger(stateDir);
61
+ return buildL2PrincipleReaderFromLedger(ledger, opts);
62
+ }
63
+ catch (error) {
64
+ const warn = opts?.logger?.warn ?? ((msg) => console.warn(msg));
65
+ const reason = error instanceof Error ? error.message : String(error);
66
+ warn(`[l2_dreamer] listActivePrinciples degraded — no internalized principles loaded: ${reason}`);
67
+ return { listActivePrinciples: async () => [] };
68
+ }
69
+ }
70
+ //# sourceMappingURL=build-l2-principle-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-l2-principle-reader.js","sourceRoot":"","sources":["../../src/runtime-v2/build-l2-principle-reader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAQzD;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC9C,MAAkG,EAClG,IAAoC;IAEpC,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAExE,OAAO;QACL,oBAAoB,EAAE,KAAK,IAAI,EAAE;YAC/B,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAqD,EAAE;oBACvG,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ;wBAAE,OAAO,KAAK,CAAC;oBACxC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAClF,IAAI,CAAC,yEAAyE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;wBACjH,OAAO,KAAK,CAAC;oBACf,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtE,IAAI,CAAC,mFAAmF,MAAM,EAAE,CAAC,CAAC;gBAClG,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAgB,EAChB,IAAoC;IAEpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,gCAAgC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,mFAAmF,MAAM,EAAE,CAAC,CAAC;QAClG,OAAO,EAAE,oBAAoB,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;IAClD,CAAC;AACH,CAAC"}
@@ -194,6 +194,8 @@ describe('computeEffectiveFlags', () => {
194
194
  continue;
195
195
  if (flag.id === 'internalization_auto_consumer')
196
196
  continue;
197
+ if (flag.id === 'story_a_approval_completion')
198
+ continue;
197
199
  expect(flag.enabled, `quiet flag ${flag.id} should default off`).toBe(false);
198
200
  }
199
201
  });