@smartmemory/stratum 0.3.4 → 0.4.1

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 (73) hide show
  1. package/dist/cli/guard.js +63 -6
  2. package/dist/cli/guard.js.map +1 -1
  3. package/dist/cli/learn.js +226 -0
  4. package/dist/cli/learn.js.map +1 -0
  5. package/dist/cli/stratum.js +3 -1
  6. package/dist/cli/stratum.js.map +1 -1
  7. package/dist/connectors/background.js +53 -9
  8. package/dist/connectors/background.js.map +1 -1
  9. package/dist/connectors/base.js +16 -0
  10. package/dist/connectors/base.js.map +1 -1
  11. package/dist/connectors/cancellation.js +119 -0
  12. package/dist/connectors/cancellation.js.map +1 -0
  13. package/dist/connectors/claude-bg-worker.js +9 -1
  14. package/dist/connectors/claude-bg-worker.js.map +1 -1
  15. package/dist/connectors/claude.js +179 -86
  16. package/dist/connectors/claude.js.map +1 -1
  17. package/dist/connectors/codex.js +219 -62
  18. package/dist/connectors/codex.js.map +1 -1
  19. package/dist/connectors/runner.js +44 -3
  20. package/dist/connectors/runner.js.map +1 -1
  21. package/dist/contracts/events.json +34 -1
  22. package/dist/contracts/guard-signers.allowed +36 -0
  23. package/dist/contracts/mcp-surface.json +1085 -104
  24. package/dist/engine/checkpoint.js +8 -1
  25. package/dist/engine/checkpoint.js.map +1 -1
  26. package/dist/engine/engine.js +403 -42
  27. package/dist/engine/engine.js.map +1 -1
  28. package/dist/engine/ledger.js +12 -0
  29. package/dist/engine/ledger.js.map +1 -1
  30. package/dist/engine/receipts.js +91 -0
  31. package/dist/engine/receipts.js.map +1 -0
  32. package/dist/engine/state.js +51 -1
  33. package/dist/engine/state.js.map +1 -1
  34. package/dist/guard/authorization.js +71 -0
  35. package/dist/guard/authorization.js.map +1 -0
  36. package/dist/guard/descriptors.js +248 -0
  37. package/dist/guard/descriptors.js.map +1 -0
  38. package/dist/guard/errors.js +12 -0
  39. package/dist/guard/errors.js.map +1 -1
  40. package/dist/guard/evidence.js +24 -3
  41. package/dist/guard/evidence.js.map +1 -1
  42. package/dist/guard/sshsig.js +264 -0
  43. package/dist/guard/sshsig.js.map +1 -0
  44. package/dist/guard/store.js +13 -0
  45. package/dist/guard/store.js.map +1 -1
  46. package/dist/guard/transition.js +484 -33
  47. package/dist/guard/transition.js.map +1 -1
  48. package/dist/guard/trust.js +78 -0
  49. package/dist/guard/trust.js.map +1 -0
  50. package/dist/judge/judged.js +1 -1
  51. package/dist/judge/pricing.js +1 -0
  52. package/dist/judge/pricing.js.map +1 -1
  53. package/dist/learn/apply.js +600 -0
  54. package/dist/learn/apply.js.map +1 -0
  55. package/dist/learn/candidate.js +186 -0
  56. package/dist/learn/candidate.js.map +1 -0
  57. package/dist/learn/classify.js +181 -0
  58. package/dist/learn/classify.js.map +1 -0
  59. package/dist/learn/harvest.js +138 -0
  60. package/dist/learn/harvest.js.map +1 -0
  61. package/dist/learn/smartmemory_egress.js +330 -0
  62. package/dist/learn/smartmemory_egress.js.map +1 -0
  63. package/dist/mcp/server.js +150 -22
  64. package/dist/mcp/server.js.map +1 -1
  65. package/dist/policy/bundle.js +195 -0
  66. package/dist/policy/bundle.js.map +1 -0
  67. package/dist/policy/events.js +51 -0
  68. package/dist/policy/events.js.map +1 -0
  69. package/dist/policy/smartmemory_client.js +332 -0
  70. package/dist/policy/smartmemory_client.js.map +1 -0
  71. package/dist/policy/types.js +2 -0
  72. package/dist/policy/types.js.map +1 -0
  73. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,195 @@
1
+ import { createHash } from "node:crypto";
2
+ import { z } from "zod";
3
+ import { canonicalJson } from "../guard/canonical.js";
4
+ import { SpecificationSchema } from "../ir/schema.js";
5
+ const SHA256_HEX = /^[0-9a-f]{64}$/i;
6
+ const SourceSchema = z.object({
7
+ record_id: z.string().min(1),
8
+ memory_type: z.string().min(1),
9
+ version: z.number().int(),
10
+ content_hash: z.string().regex(SHA256_HEX),
11
+ chain_hash: z.string().regex(SHA256_HEX),
12
+ workspace_id: z.string().min(1),
13
+ decision_type: z.string().optional(),
14
+ domain: z.string().optional(),
15
+ }).strict();
16
+ const RuleBindSchema = z.discriminatedUnion("kind", [
17
+ z.object({ kind: z.literal("ensure"), step_selector: z.string().optional() }).strict(),
18
+ z.object({ kind: z.literal("guard_edge"), resource_selector: z.string().optional(), edge: z.string().optional() }).strict(),
19
+ ]);
20
+ const RulePredicateSchema = z.union([
21
+ z.object({ judged: z.object({ statement: z.string(), stakes: z.enum(["cheap", "default", "paranoid"]) }).strict() }).strict(),
22
+ z.object({ expr: z.string() }).strict(),
23
+ z.object({ file_exists: z.string() }).strict(),
24
+ z.object({ file_contains: z.object({ path: z.string(), text: z.string() }).strict() }).strict(),
25
+ ]);
26
+ const RuleSchema = z.object({
27
+ rule_id: z.string().min(1),
28
+ source: SourceSchema,
29
+ bind: RuleBindSchema,
30
+ predicate: RulePredicateSchema,
31
+ on_fail: z.enum(["refuse", "gate"]),
32
+ }).strict();
33
+ const PolicyBundleSchema = z.object({
34
+ bundle_id: z.string().regex(SHA256_HEX),
35
+ workspace_id: z.string().min(1),
36
+ compiled_at: z.string().datetime({ offset: true }).refine((value) => value.endsWith("Z"), "compiled_at must be UTC"),
37
+ selector: z.object({
38
+ workflow: z.string().optional(),
39
+ domain: z.string().optional(),
40
+ status: z.array(z.literal("active")),
41
+ }).strict(),
42
+ rules: z.array(RuleSchema),
43
+ }).strict();
44
+ export function bundleIdForRules(rules) {
45
+ return createHash("sha256").update(canonicalJson(rules), "utf8").digest("hex");
46
+ }
47
+ export function validateBundle(bundle) {
48
+ const parsed = PolicyBundleSchema.parse(bundle);
49
+ const expected = bundleIdForRules(parsed.rules);
50
+ if (parsed.bundle_id !== expected) {
51
+ throw new Error(`policy bundle_id mismatch: expected ${expected}, got ${parsed.bundle_id}`);
52
+ }
53
+ for (const rule of parsed.rules) {
54
+ if (rule.bind.kind !== "guard_edge")
55
+ continue;
56
+ // P1 guard evaluation accepts only trusted builtin statements or judged
57
+ // prose; raw ensure expressions do not have a guard evaluator/context.
58
+ if ("expr" in rule.predicate) {
59
+ throw new Error("guard-edge expr predicates are not evaluable in P1; use judged/file_exists/file_contains");
60
+ }
61
+ if (rule.on_fail === "gate") {
62
+ throw new Error(`guard-edge policy rule ${JSON.stringify(rule.rule_id)} uses on_fail=${JSON.stringify("gate")}; guard gate routing is deferred to P3`);
63
+ }
64
+ }
65
+ return parsed;
66
+ }
67
+ export function policyRuleKey(flowName, stepId) {
68
+ return `${flowName}/${stepId}`;
69
+ }
70
+ export function mergeBundleIntoSpec(spec, bundle, policyStepSelector) {
71
+ const merged = structuredClone(spec);
72
+ const policyRules = Object.create(null);
73
+ for (const rule of bundle.rules) {
74
+ if (rule.bind.kind !== "ensure")
75
+ continue;
76
+ const selector = effectiveStepSelector(rule.bind.step_selector ?? "*", policyStepSelector);
77
+ for (const [flowName, flow] of Object.entries(merged.flows)) {
78
+ if (flowName === "entry" || typeof flow === "string")
79
+ continue;
80
+ for (const step of flow.steps) {
81
+ if (step.do === undefined || !selector.matches(step.id))
82
+ continue;
83
+ const ensure = step.ensure ?? [];
84
+ const ensureIndex = ensure.length;
85
+ step.ensure = [...ensure, structuredClone(rule.predicate)];
86
+ (policyRules[policyRuleKey(flowName, step.id)] ??= []).push({
87
+ ensure_index: ensureIndex,
88
+ rule_id: rule.rule_id,
89
+ source: structuredClone(rule.source),
90
+ step_selector: selector.audit,
91
+ on_fail: rule.on_fail,
92
+ });
93
+ }
94
+ }
95
+ }
96
+ return {
97
+ spec: SpecificationSchema.parse(merged),
98
+ policy_rules: policyRules,
99
+ bundle_id: bundle.bundle_id,
100
+ };
101
+ }
102
+ /**
103
+ * A caller selector is a narrowing constraint, never permission to bind a rule
104
+ * beyond its compiler-provided selector. When neither glob contains the other,
105
+ * retain their intersection and make that conjunction explicit in the audit.
106
+ */
107
+ function effectiveStepSelector(ruleSelector, override) {
108
+ if (override === undefined || override === ruleSelector) {
109
+ return { audit: ruleSelector, matches: (stepId) => globMatches(ruleSelector, stepId) };
110
+ }
111
+ if (override === "*") {
112
+ return { audit: ruleSelector, matches: (stepId) => globMatches(ruleSelector, stepId) };
113
+ }
114
+ if (ruleSelector === "*") {
115
+ return { audit: override, matches: (stepId) => globMatches(override, stepId) };
116
+ }
117
+ return {
118
+ audit: `${ruleSelector} & ${override}`,
119
+ matches: (stepId) => globMatches(ruleSelector, stepId) && globMatches(override, stepId),
120
+ };
121
+ }
122
+ export function guardEdgePredicatesFor(bundle, resourceId, edgePredicates, stakes) {
123
+ const merged = structuredClone(edgePredicates);
124
+ const addedJudged = new Map();
125
+ for (const rule of bundle.rules) {
126
+ if (rule.bind.kind !== "guard_edge")
127
+ continue;
128
+ if (!globMatches(rule.bind.resource_selector ?? "*", resourceId))
129
+ continue;
130
+ for (const edge of Object.keys(merged)) {
131
+ if (rule.bind.edge !== undefined && rule.bind.edge !== edge)
132
+ continue;
133
+ const predicate = guardPredicate(rule);
134
+ (merged[edge] ??= []).push(predicate);
135
+ if ("judged" in rule.predicate) {
136
+ (addedJudged.get(edge) ?? setAndGet(addedJudged, edge)).push(rule.rule_id);
137
+ stakes[edge] = maxStakes(stakes[edge], rule.predicate.judged.stakes);
138
+ }
139
+ }
140
+ }
141
+ for (const [edge, ruleIds] of addedJudged) {
142
+ const predicates = merged[edge] ?? [];
143
+ const hasDeterministic = predicates.some((predicate) => predicate.type === undefined || predicate.type === "deterministic");
144
+ if (stakes[edge] === "paranoid" && !hasDeterministic) {
145
+ throw new Error(`policy rule ${JSON.stringify(ruleIds[0])} cannot merge onto paranoid edge ${JSON.stringify(edge)} without a deterministic predicate`);
146
+ }
147
+ }
148
+ return merged;
149
+ }
150
+ const STAKE_ORDER = { cheap: 0, default: 1, paranoid: 2 };
151
+ function maxStakes(existing, added) {
152
+ const current = existing === "cheap" || existing === "default" || existing === "paranoid" ? existing : "default";
153
+ return STAKE_ORDER[added] > STAKE_ORDER[current] ? added : current;
154
+ }
155
+ function guardPredicate(rule) {
156
+ const common = { id: rule.rule_id, source: structuredClone(rule.source) };
157
+ const predicate = rule.predicate;
158
+ if ("judged" in predicate)
159
+ return { type: "judged", statement: predicate.judged.statement, stakes: predicate.judged.stakes, ...common };
160
+ if ("expr" in predicate)
161
+ return { type: "deterministic", statement: predicate.expr, ...common };
162
+ if ("file_exists" in predicate) {
163
+ return { type: "deterministic", statement: `server_file_exists(${JSON.stringify(predicate.file_exists)})`, ...common };
164
+ }
165
+ return {
166
+ type: "deterministic",
167
+ statement: `server_file_contains(${JSON.stringify(predicate.file_contains.path)}, ${JSON.stringify(predicate.file_contains.text)})`,
168
+ ...common,
169
+ };
170
+ }
171
+ function setAndGet(map, key) {
172
+ const value = [];
173
+ map.set(key, value);
174
+ return value;
175
+ }
176
+ function globMatches(pattern, value) {
177
+ let source = "^";
178
+ for (const character of pattern) {
179
+ if (character === "*")
180
+ source += ".*";
181
+ else if (character === "?")
182
+ source += ".";
183
+ else
184
+ source += character.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
185
+ }
186
+ return new RegExp(`${source}$`, "u").test(value);
187
+ }
188
+ export function predicateType(predicate) {
189
+ return "judged" in predicate ? "judged" : "deterministic";
190
+ }
191
+ export function sourceFromPredicate(predicate) {
192
+ const source = predicate.source;
193
+ return SourceSchema.safeParse(source).success ? source : undefined;
194
+ }
195
+ //# sourceMappingURL=bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/policy/bundle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ export function buildGuardTransitionEvent(options) {
2
+ const { entry } = options;
3
+ return {
4
+ event_id: `${options.runId}:${entry.entry_digest}`,
5
+ kind: "guard_transition",
6
+ run_id: options.runId,
7
+ bundle_id: options.bundleId,
8
+ runner: "local",
9
+ occurred_at: options.occurredAt ?? new Date().toISOString(),
10
+ resource_id: options.resourceId,
11
+ from_state: entry.from_state,
12
+ to_state: entry.to_state,
13
+ outcome: entry.outcome,
14
+ resolved_by: entry.resolved_by,
15
+ ...(options.resolvedByUserId !== undefined ? { resolved_by_user_id: options.resolvedByUserId } : {}),
16
+ ...(entry.rationale !== null ? { rationale: entry.rationale } : {}),
17
+ ledger_ref: entry.entry_digest,
18
+ entry_digest: entry.entry_digest,
19
+ prev_digest: entry.prev_digest,
20
+ ...(entry.payload_digest !== null ? { payload_digest: entry.payload_digest } : {}),
21
+ rules_evaluated: structuredClone(options.rulesEvaluated),
22
+ };
23
+ }
24
+ export function buildGateResolutionEvent(options) {
25
+ return {
26
+ event_id: `${options.runId}:gate:${options.stepId}:${options.round}`,
27
+ kind: "gate_resolution",
28
+ run_id: options.runId,
29
+ bundle_id: options.bundleId,
30
+ runner: "local",
31
+ occurred_at: options.occurredAt ?? new Date().toISOString(),
32
+ outcome: options.outcome,
33
+ resolved_by: "human",
34
+ ...(options.resolvedByUserId !== undefined ? { resolved_by_user_id: options.resolvedByUserId } : {}),
35
+ rules_evaluated: [],
36
+ };
37
+ }
38
+ export function buildFlowTerminalEvent(options) {
39
+ return {
40
+ event_id: `${options.runId}:flow`,
41
+ kind: "flow_terminal",
42
+ run_id: options.runId,
43
+ bundle_id: options.bundleId,
44
+ runner: "local",
45
+ occurred_at: options.occurredAt ?? new Date().toISOString(),
46
+ outcome: options.outcome,
47
+ resolved_by: "agent",
48
+ rules_evaluated: structuredClone(options.rulesEvaluated),
49
+ };
50
+ }
51
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/policy/events.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,yBAAyB,CAAC,OAQzC;IACC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,OAAO;QACL,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,YAAY,EAAE;QAClD,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,MAAM,EAAE,OAAO;QACf,WAAW,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC3D,WAAW,EAAE,OAAO,CAAC,UAAU;QAC/B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAgC;QACnD,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,UAAU,EAAE,KAAK,CAAC,YAAY;QAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAQxC;IACC,OAAO;QACL,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,SAAS,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE;QACpE,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,MAAM,EAAE,OAAO;QACf,WAAW,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC3D,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,OAAO;QACpB,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,eAAe,EAAE,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAMtC;IACC,OAAO;QACL,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,OAAO;QACjC,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,MAAM,EAAE,OAAO;QACf,WAAW,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC3D,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,OAAO;QACpB,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC;KACzD,CAAC;AACJ,CAAC"}