patchwork-os 1.2.0-beta.2.canary.626 → 1.2.0-beta.2.canary.628

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.
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Information-boundary receipts (ADR-0021 Phase 3).
3
+ *
4
+ * > Every boundary decision produces a record, in the same shape and store as
5
+ * > gate decisions: what was declared, where it was going, what was removed,
6
+ * > what was retained, why.
7
+ *
8
+ * Patchwork's standing claim is that every consequential decision leaves a
9
+ * receipt. The autonomy gate extends that to *what the AI did*; this extends it
10
+ * to *what the AI was told* — which is the half nobody could previously audit.
11
+ *
12
+ * ## The one thing this file must never do
13
+ *
14
+ * **It must never contain the payload.** A receipt records that a decision was
15
+ * made about data with a given classification; writing the prompt itself would
16
+ * turn the privacy audit log into the largest unclassified copy of exactly the
17
+ * material the boundary exists to protect, sitting in plain JSONL. Only
18
+ * declared metadata is stored: classification, category NAMES, destination id,
19
+ * decision, reason. There is no field for the text, deliberately, so a future
20
+ * caller cannot pass one by accident.
21
+ *
22
+ * ## Fail-soft, always
23
+ *
24
+ * A receipt that cannot be written must never block or alter a decision. The
25
+ * boundary already refuses correctly without any sink attached (pinned by a
26
+ * test in agentBoundary.test.ts); this store is observability, not enforcement.
27
+ * Every write path here swallows its own errors for that reason.
28
+ */
29
+ import type { BoundaryDecision, Classification } from "./dataPolicy.js";
30
+ export interface BoundaryReceipt {
31
+ seq: number;
32
+ at: number;
33
+ decision: BoundaryDecision;
34
+ /** What the step DECLARED it was carrying. */
35
+ classification: Classification;
36
+ /** Category names only — never their contents. */
37
+ categories?: string[];
38
+ /** Where it was going. */
39
+ destinationId: string;
40
+ destinationType: "local" | "remote";
41
+ /** Which categories the decision required be removed. */
42
+ redactCategories?: string[];
43
+ reason: string;
44
+ /** Recipe/step context when the caller knows it. */
45
+ recipeName?: string;
46
+ stepId?: string;
47
+ }
48
+ export interface RecordBoundaryReceiptInput {
49
+ decision: BoundaryDecision;
50
+ classification: Classification;
51
+ categories?: string[];
52
+ destinationId: string;
53
+ destinationType: "local" | "remote";
54
+ redactCategories?: string[];
55
+ reason: string;
56
+ recipeName?: string;
57
+ stepId?: string;
58
+ }
59
+ export interface BoundaryReceiptLogOptions {
60
+ dir: string;
61
+ memoryCap?: number;
62
+ now?: () => number;
63
+ logger?: {
64
+ warn?: (msg: string) => void;
65
+ };
66
+ }
67
+ export declare class BoundaryReceiptLog {
68
+ private readonly opts;
69
+ private receipts;
70
+ private seq;
71
+ private readonly file;
72
+ private readonly memoryCap;
73
+ private readonly now;
74
+ constructor(opts: BoundaryReceiptLogOptions);
75
+ private loadExisting;
76
+ private trim;
77
+ /**
78
+ * Record one boundary decision.
79
+ *
80
+ * Returns the stored receipt. Never throws: a failure to persist is logged
81
+ * and swallowed, because this is observability and the decision it describes
82
+ * has already been made and enforced.
83
+ */
84
+ record(input: RecordBoundaryReceiptInput): BoundaryReceipt;
85
+ /** Most recent first. */
86
+ recent(limit?: number): BoundaryReceipt[];
87
+ /** Counts per decision — the shape a dashboard or CLI summary wants. */
88
+ summary(): Record<BoundaryDecision, number>;
89
+ }
@@ -0,0 +1,139 @@
1
+ /**
2
+ * Information-boundary receipts (ADR-0021 Phase 3).
3
+ *
4
+ * > Every boundary decision produces a record, in the same shape and store as
5
+ * > gate decisions: what was declared, where it was going, what was removed,
6
+ * > what was retained, why.
7
+ *
8
+ * Patchwork's standing claim is that every consequential decision leaves a
9
+ * receipt. The autonomy gate extends that to *what the AI did*; this extends it
10
+ * to *what the AI was told* — which is the half nobody could previously audit.
11
+ *
12
+ * ## The one thing this file must never do
13
+ *
14
+ * **It must never contain the payload.** A receipt records that a decision was
15
+ * made about data with a given classification; writing the prompt itself would
16
+ * turn the privacy audit log into the largest unclassified copy of exactly the
17
+ * material the boundary exists to protect, sitting in plain JSONL. Only
18
+ * declared metadata is stored: classification, category NAMES, destination id,
19
+ * decision, reason. There is no field for the text, deliberately, so a future
20
+ * caller cannot pass one by accident.
21
+ *
22
+ * ## Fail-soft, always
23
+ *
24
+ * A receipt that cannot be written must never block or alter a decision. The
25
+ * boundary already refuses correctly without any sink attached (pinned by a
26
+ * test in agentBoundary.test.ts); this store is observability, not enforcement.
27
+ * Every write path here swallows its own errors for that reason.
28
+ */
29
+ import { appendFileSync, mkdirSync, readFileSync } from "node:fs";
30
+ import path from "node:path";
31
+ /** Clip so a runaway reason cannot bloat the audit log. */
32
+ const MAX_REASON = 500;
33
+ const DEFAULT_MEMORY_CAP = 500;
34
+ export class BoundaryReceiptLog {
35
+ opts;
36
+ receipts = [];
37
+ seq = 0;
38
+ file;
39
+ memoryCap;
40
+ now;
41
+ constructor(opts) {
42
+ this.opts = opts;
43
+ this.file = path.join(opts.dir, "boundary_receipts.jsonl");
44
+ this.memoryCap = opts.memoryCap ?? DEFAULT_MEMORY_CAP;
45
+ this.now = opts.now ?? Date.now;
46
+ try {
47
+ // 0o700 like the gate log: these name destinations and classifications,
48
+ // which is a map of what this machine considers sensitive.
49
+ mkdirSync(opts.dir, { recursive: true, mode: 0o700 });
50
+ }
51
+ catch (err) {
52
+ opts.logger?.warn?.(`[boundary-receipts] could not create ${opts.dir}: ${err instanceof Error ? err.message : String(err)}`);
53
+ }
54
+ this.loadExisting();
55
+ }
56
+ loadExisting() {
57
+ try {
58
+ const text = readFileSync(this.file, "utf-8");
59
+ for (const line of text.split("\n")) {
60
+ const t = line.trim();
61
+ if (!t)
62
+ continue;
63
+ try {
64
+ const r = JSON.parse(t);
65
+ if (typeof r.seq === "number") {
66
+ this.receipts.push(r);
67
+ if (r.seq > this.seq)
68
+ this.seq = r.seq;
69
+ }
70
+ }
71
+ catch {
72
+ // one malformed line must not make the whole log unreadable
73
+ }
74
+ }
75
+ this.trim();
76
+ }
77
+ catch {
78
+ // no file yet — normal on first run
79
+ }
80
+ }
81
+ trim() {
82
+ if (this.receipts.length > this.memoryCap) {
83
+ this.receipts = this.receipts.slice(-this.memoryCap);
84
+ }
85
+ }
86
+ /**
87
+ * Record one boundary decision.
88
+ *
89
+ * Returns the stored receipt. Never throws: a failure to persist is logged
90
+ * and swallowed, because this is observability and the decision it describes
91
+ * has already been made and enforced.
92
+ */
93
+ record(input) {
94
+ const receipt = {
95
+ seq: ++this.seq,
96
+ at: this.now(),
97
+ decision: input.decision,
98
+ classification: input.classification,
99
+ destinationId: input.destinationId,
100
+ destinationType: input.destinationType,
101
+ reason: input.reason.slice(0, MAX_REASON),
102
+ ...(input.categories?.length ? { categories: input.categories } : {}),
103
+ ...(input.redactCategories?.length
104
+ ? { redactCategories: input.redactCategories }
105
+ : {}),
106
+ ...(input.recipeName ? { recipeName: input.recipeName } : {}),
107
+ ...(input.stepId ? { stepId: input.stepId } : {}),
108
+ };
109
+ this.receipts.push(receipt);
110
+ this.trim();
111
+ try {
112
+ appendFileSync(this.file, `${JSON.stringify(receipt)}\n`, {
113
+ mode: 0o600,
114
+ });
115
+ }
116
+ catch (err) {
117
+ this.opts.logger?.warn?.(`[boundary-receipts] append failed: ${err instanceof Error ? err.message : String(err)}`);
118
+ }
119
+ return receipt;
120
+ }
121
+ /** Most recent first. */
122
+ recent(limit = 50) {
123
+ return this.receipts.slice(-limit).reverse();
124
+ }
125
+ /** Counts per decision — the shape a dashboard or CLI summary wants. */
126
+ summary() {
127
+ const out = {
128
+ ALLOW: 0,
129
+ ALLOW_REDACTED: 0,
130
+ LOCAL_ONLY: 0,
131
+ REQUIRE_APPROVAL: 0,
132
+ DENY: 0,
133
+ };
134
+ for (const r of this.receipts)
135
+ out[r.decision]++;
136
+ return out;
137
+ }
138
+ }
139
+ //# sourceMappingURL=boundaryReceiptLog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boundaryReceiptLog.js","sourceRoot":"","sources":["../../src/privacy/boundaryReceiptLog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Destination registry (ADR-0021).
3
+ *
4
+ * The decision in `dataPolicy.ts` is pure and complete, and until this module
5
+ * existed it was also unreachable: `executeAgent` only evaluates the boundary
6
+ * when a destination is supplied, and nothing supplied one. The engine was
7
+ * built and inert.
8
+ *
9
+ * A destination is *where a prompt is about to go*. Patchwork resolves that
10
+ * from the driver, because that is what actually determines whether bytes
11
+ * cross a network boundary:
12
+ *
13
+ * local — a model on this machine (`local`, `ollama`, an OpenAI-compatible
14
+ * endpoint pointed at localhost)
15
+ * remote — anything that sends the prompt to a third party
16
+ *
17
+ * ## Configuration is opt-in, and absence means inert
18
+ *
19
+ * With no `privacy.destinations` block, `resolveDestination` returns null and
20
+ * `executeAgent` skips the boundary entirely — byte-identical to before. That
21
+ * is the same fail-soft posture as the default classification, and for the same
22
+ * reason: a boundary that refuses work on every install that has not configured
23
+ * it would be switched off before it ever protected anyone.
24
+ *
25
+ * The asymmetry is deliberate and worth stating. Configuring a destination is
26
+ * how an operator OPTS IN to enforcement. Once opted in, the decision is
27
+ * fail-CLOSED — an unknown driver resolves to the strictest registered remote
28
+ * profile rather than to "no destination", because "we do not recognise where
29
+ * this is going" must never read as "it is fine to send".
30
+ */
31
+ import { type Classification, type Destination } from "./dataPolicy.js";
32
+ export interface DestinationConfig {
33
+ type?: string;
34
+ classifications?: unknown;
35
+ forbiddenCategories?: unknown;
36
+ approvable?: unknown;
37
+ /** Driver names this destination covers. */
38
+ drivers?: unknown;
39
+ }
40
+ export interface PrivacyConfig {
41
+ destinations?: Record<string, DestinationConfig>;
42
+ }
43
+ export interface ParsedRegistry {
44
+ destinations: Destination[];
45
+ /** Destination id → driver names it covers. */
46
+ driversFor: Map<string, string[]>;
47
+ /**
48
+ * Entries that could not be parsed, with a reason. REPORTED rather than
49
+ * dropped: a destination that silently vanishes from the registry downgrades
50
+ * enforcement to "no destination", which is exactly the direction this must
51
+ * never fail in.
52
+ */
53
+ invalid: Array<{
54
+ id: string;
55
+ reason: string;
56
+ }>;
57
+ }
58
+ export declare function parseRegistry(cfg: PrivacyConfig | undefined): ParsedRegistry;
59
+ export interface ResolvedDestination {
60
+ destination: Destination;
61
+ /** True when some registered LOCAL destination is cleared for `forClass`. */
62
+ localDestinationAccepts: boolean;
63
+ }
64
+ /**
65
+ * Resolve the destination for a dispatch.
66
+ *
67
+ * Returns null ONLY when nothing is registered — the inert case. Once anything
68
+ * is registered, this always yields a destination, because falling back to null
69
+ * on an unrecognised driver would silently disable the boundary for exactly the
70
+ * dispatches nobody anticipated.
71
+ */
72
+ export declare function resolveDestination(registry: ParsedRegistry, driver: string | undefined, forClass: Classification): ResolvedDestination | null;
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Destination registry (ADR-0021).
3
+ *
4
+ * The decision in `dataPolicy.ts` is pure and complete, and until this module
5
+ * existed it was also unreachable: `executeAgent` only evaluates the boundary
6
+ * when a destination is supplied, and nothing supplied one. The engine was
7
+ * built and inert.
8
+ *
9
+ * A destination is *where a prompt is about to go*. Patchwork resolves that
10
+ * from the driver, because that is what actually determines whether bytes
11
+ * cross a network boundary:
12
+ *
13
+ * local — a model on this machine (`local`, `ollama`, an OpenAI-compatible
14
+ * endpoint pointed at localhost)
15
+ * remote — anything that sends the prompt to a third party
16
+ *
17
+ * ## Configuration is opt-in, and absence means inert
18
+ *
19
+ * With no `privacy.destinations` block, `resolveDestination` returns null and
20
+ * `executeAgent` skips the boundary entirely — byte-identical to before. That
21
+ * is the same fail-soft posture as the default classification, and for the same
22
+ * reason: a boundary that refuses work on every install that has not configured
23
+ * it would be switched off before it ever protected anyone.
24
+ *
25
+ * The asymmetry is deliberate and worth stating. Configuring a destination is
26
+ * how an operator OPTS IN to enforcement. Once opted in, the decision is
27
+ * fail-CLOSED — an unknown driver resolves to the strictest registered remote
28
+ * profile rather than to "no destination", because "we do not recognise where
29
+ * this is going" must never read as "it is fine to send".
30
+ */
31
+ import { CLASSIFICATIONS, classificationRank, } from "./dataPolicy.js";
32
+ /** Drivers that keep the prompt on this machine. */
33
+ const LOCAL_DRIVERS = new Set(["local", "ollama", "lmstudio", "llamacpp"]);
34
+ function parseClassifications(raw) {
35
+ if (!Array.isArray(raw))
36
+ return null;
37
+ const out = [];
38
+ for (const v of raw) {
39
+ if (typeof v !== "string")
40
+ return null;
41
+ if (!CLASSIFICATIONS.includes(v))
42
+ return null;
43
+ out.push(v);
44
+ }
45
+ return out;
46
+ }
47
+ export function parseRegistry(cfg) {
48
+ const destinations = [];
49
+ const driversFor = new Map();
50
+ const invalid = [];
51
+ for (const [id, raw] of Object.entries(cfg?.destinations ?? {})) {
52
+ if (!raw || typeof raw !== "object") {
53
+ invalid.push({ id, reason: "not an object" });
54
+ continue;
55
+ }
56
+ const type = raw.type === "local" ? "local" : raw.type === "remote" ? "remote" : null;
57
+ if (!type) {
58
+ invalid.push({ id, reason: `type must be "local" or "remote"` });
59
+ continue;
60
+ }
61
+ const classifications = parseClassifications(raw.classifications);
62
+ if (!classifications) {
63
+ invalid.push({
64
+ id,
65
+ reason: "classifications must be an array of known classifications",
66
+ });
67
+ continue;
68
+ }
69
+ const dest = { id, type, classifications };
70
+ if (Array.isArray(raw.forbiddenCategories)) {
71
+ dest.forbiddenCategories = raw.forbiddenCategories.filter((c) => typeof c === "string");
72
+ }
73
+ if (raw.approvable === true)
74
+ dest.approvable = true;
75
+ destinations.push(dest);
76
+ driversFor.set(id, Array.isArray(raw.drivers)
77
+ ? raw.drivers.filter((d) => typeof d === "string")
78
+ : []);
79
+ }
80
+ return { destinations, driversFor, invalid };
81
+ }
82
+ /**
83
+ * The strictest remote destination.
84
+ *
85
+ * Ranked by the HIGHEST classification each is cleared for, not by how many it
86
+ * lists. Counting was wrong in the direction that matters: a destination
87
+ * cleared for `[restricted]` has one entry and one cleared for
88
+ * `[public, internal]` has two, so "fewest wins" would pick the one trusted
89
+ * with the most sensitive data as the safe fallback for an unrecognised
90
+ * driver. Ties break on the smaller list.
91
+ */
92
+ function strictestRemote(destinations) {
93
+ const remotes = destinations.filter((d) => d.type === "remote");
94
+ if (remotes.length === 0)
95
+ return null;
96
+ const ceiling = (d) => d.classifications.length === 0
97
+ ? -1
98
+ : Math.max(...d.classifications.map(classificationRank));
99
+ return remotes.reduce((a, b) => {
100
+ const ca = ceiling(a);
101
+ const cb = ceiling(b);
102
+ if (cb !== ca)
103
+ return cb < ca ? b : a;
104
+ return b.classifications.length < a.classifications.length ? b : a;
105
+ });
106
+ }
107
+ /**
108
+ * Resolve the destination for a dispatch.
109
+ *
110
+ * Returns null ONLY when nothing is registered — the inert case. Once anything
111
+ * is registered, this always yields a destination, because falling back to null
112
+ * on an unrecognised driver would silently disable the boundary for exactly the
113
+ * dispatches nobody anticipated.
114
+ */
115
+ export function resolveDestination(registry, driver, forClass) {
116
+ if (registry.destinations.length === 0) {
117
+ // NOTHING configured is the inert case, and is fine.
118
+ //
119
+ // Something configured that ALL failed to parse is not. Returning null
120
+ // there reverts the boundary to inert on a typo — `type: "cloud"` instead
121
+ // of `"remote"` — while the operator believes they have opted in. That is
122
+ // the fail-open this module's own header says it prevents, reachable by a
123
+ // single misspelled word.
124
+ //
125
+ // So: any invalid entry with no valid entry surviving yields a synthetic
126
+ // destination cleared for NOTHING. Every dispatch is refused, loudly and
127
+ // immediately, which is the correct reading of "the operator asked for
128
+ // enforcement and we cannot tell what they meant".
129
+ if (registry.invalid.length > 0) {
130
+ return {
131
+ destination: {
132
+ id: `unparseable-config(${registry.invalid.map((i) => i.id).join(", ")})`,
133
+ type: "remote",
134
+ classifications: [],
135
+ },
136
+ localDestinationAccepts: false,
137
+ };
138
+ }
139
+ return null;
140
+ }
141
+ const d = (driver ?? "").toLowerCase();
142
+ const localAccepts = registry.destinations.some((dest) => dest.type === "local" && dest.classifications.includes(forClass));
143
+ // Explicit driver mapping wins.
144
+ for (const dest of registry.destinations) {
145
+ if ((registry.driversFor.get(dest.id) ?? []).includes(d)) {
146
+ return { destination: dest, localDestinationAccepts: localAccepts };
147
+ }
148
+ }
149
+ // Otherwise infer by driver family.
150
+ if (LOCAL_DRIVERS.has(d)) {
151
+ const local = registry.destinations.find((x) => x.type === "local");
152
+ if (local) {
153
+ return { destination: local, localDestinationAccepts: localAccepts };
154
+ }
155
+ }
156
+ // Unknown or remote driver → strictest remote. Fail closed: "we do not
157
+ // recognise where this is going" must never read as "it is fine to send".
158
+ const remote = strictestRemote(registry.destinations);
159
+ if (remote) {
160
+ return { destination: remote, localDestinationAccepts: localAccepts };
161
+ }
162
+ // Only local destinations are registered but the driver is not local. The
163
+ // strictest available answer is the local profile, which will refuse
164
+ // anything it is not cleared for.
165
+ const first = registry.destinations[0];
166
+ return { destination: first, localDestinationAccepts: localAccepts };
167
+ }
168
+ //# sourceMappingURL=destinationRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destinationRegistry.js","sourceRoot":"","sources":["../../src/privacy/destinationRegistry.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@
8
8
  * localFn (Ollama/LM Studio) instead of Anthropic API — opt-in behaviour change.
9
9
  */
10
10
  import { type Destination } from "../privacy/dataPolicy.js";
11
+ import { type PrivacyConfig } from "../privacy/destinationRegistry.js";
11
12
  /**
12
13
  * Token usage reported by an adapter. Both fields are integers; absent
13
14
  * `usage` on the parent `AgentResult` means the driver didn't surface
@@ -48,10 +49,19 @@ export interface AgentExecutorDeps {
48
49
  * Optional: an unwired sink means no receipt, never a refusal — the
49
50
  * boundary must not depend on its own audit trail being configured.
50
51
  */
52
+ /**
53
+ * Supplies `privacy.destinations` from operator config. Absent means the
54
+ * boundary stays inert unless a caller passes an explicit destination —
55
+ * the opt-in posture ADR-0021 requires.
56
+ */
57
+ loadPrivacyConfigFn?: () => PrivacyConfig | undefined;
51
58
  recordBoundaryDecisionFn?: (r: {
52
59
  decision: string;
53
60
  reason: string;
54
- destinationId?: string;
61
+ destinationId: string;
62
+ destinationType: "local" | "remote";
63
+ classification: string;
64
+ categories?: string[];
55
65
  redactCategories?: string[];
56
66
  }) => void;
57
67
  anthropicFn: (prompt: string, model: string) => Promise<AgentResult>;
@@ -7,7 +7,8 @@
7
7
  * CHANGELOG: chained users with model:local in ~/.patchwork/config now route to
8
8
  * localFn (Ollama/LM Studio) instead of Anthropic API — opt-in behaviour change.
9
9
  */
10
- import { decideBoundary, parseDataPolicy, } from "../privacy/dataPolicy.js";
10
+ import { DEFAULT_CLASSIFICATION, decideBoundary, parseDataPolicy, } from "../privacy/dataPolicy.js";
11
+ import { parseRegistry, resolveDestination, } from "../privacy/destinationRegistry.js";
11
12
  import { resolveLocalModel } from "./localSettings.js";
12
13
  /**
13
14
  * Model the anthropic/local agent paths fall back to when a step omits `model`.
@@ -51,21 +52,39 @@ const CODEX_WORKER_SANDBOX_LOCKDOWN = {
51
52
  networkAccess: false,
52
53
  webSearch: false,
53
54
  };
54
- /**
55
- * Evaluate the information boundary for one agent step.
56
- *
57
- * Returns null when the step declares nothing AND no destination is registered
58
- * byte-identical to pre-boundary behaviour, which is the state of every
59
- * existing install.
60
- *
61
- * A MALFORMED `data_policy` fails closed with DENY rather than defaulting. The
62
- * operator wrote a label; silently reading it as `internal` because of a typo
63
- * would leave them believing data was protected when it was not.
64
- */
65
- function evaluateBoundary(ctx) {
66
- if (!ctx?.destination)
55
+ function evaluateBoundary(ctx, driver, loadPrivacyConfig) {
56
+ const policy0 = parseDataPolicy(ctx?.dataPolicy);
57
+ // Resolve the destination HERE rather than requiring every call site to pass
58
+ // one. There are four dispatch sites in the flat runner alone; a boundary
59
+ // that depends on each of them remembering is a boundary with four ways to
60
+ // be bypassed, and the fifth call site added later inherits none of them.
61
+ let destination = ctx?.destination;
62
+ let localAccepts = ctx?.localDestinationAccepts;
63
+ if (!destination && loadPrivacyConfig) {
64
+ const registry = parseRegistry(loadPrivacyConfig());
65
+ const forClass = policy0?.classification ?? DEFAULT_CLASSIFICATION;
66
+ const resolved = resolveDestination(registry, driver, forClass);
67
+ if (resolved) {
68
+ destination = resolved.destination;
69
+ localAccepts = resolved.localDestinationAccepts;
70
+ }
71
+ }
72
+ if (!destination)
67
73
  return null;
68
- const policy = parseDataPolicy(ctx.dataPolicy);
74
+ const ctx2 = { ...ctx, destination, localDestinationAccepts: localAccepts };
75
+ // The RESOLVED destination travels with the outcome. Reading it back off the
76
+ // caller's input loses it entirely whenever the destination was resolved from
77
+ // config, which is the normal path — the receipt would then record a decision
78
+ // with no record of where the data was going, i.e. the one field that makes
79
+ // it an audit trail rather than a counter.
80
+ return {
81
+ ...evaluateAgainst(policy0, ctx2),
82
+ destination,
83
+ classification: policy0?.classification ?? DEFAULT_CLASSIFICATION,
84
+ ...(policy0?.categories?.length ? { categories: policy0.categories } : {}),
85
+ };
86
+ }
87
+ function evaluateAgainst(policy, ctx) {
69
88
  if (policy === null) {
70
89
  return {
71
90
  decision: "DENY",
@@ -104,12 +123,15 @@ export async function executeAgent(input, deps) {
104
123
  // Precedence is privacy -> capability -> cost, and it is not negotiable by
105
124
  // the later stages: a cheaper or more capable model that is not authorised
106
125
  // for the data does not become authorised by being cheaper or more capable.
107
- const boundary = evaluateBoundary(input.boundary);
126
+ const boundary = evaluateBoundary(input.boundary, driver, deps.loadPrivacyConfigFn);
108
127
  if (boundary && boundary.decision !== "ALLOW") {
109
128
  deps.recordBoundaryDecisionFn?.({
110
129
  decision: boundary.decision,
111
130
  reason: boundary.reason,
112
- destinationId: input.boundary?.destination?.id,
131
+ destinationId: boundary.destination.id,
132
+ destinationType: boundary.destination.type,
133
+ classification: boundary.classification,
134
+ ...(boundary.categories && { categories: boundary.categories }),
113
135
  ...(boundary.redactCategories && {
114
136
  redactCategories: boundary.redactCategories,
115
137
  }),
@@ -127,7 +149,10 @@ export async function executeAgent(input, deps) {
127
149
  deps.recordBoundaryDecisionFn?.({
128
150
  decision: boundary.decision,
129
151
  reason: boundary.reason,
130
- destinationId: input.boundary?.destination?.id,
152
+ destinationId: boundary.destination.id,
153
+ destinationType: boundary.destination.type,
154
+ classification: boundary.classification,
155
+ ...(boundary.categories && { categories: boundary.categories }),
131
156
  });
132
157
  }
133
158
  const cliOpts = mcpAccess !== undefined ||
@@ -1 +1 @@
1
- {"version":3,"file":"agentExecutor.js","sourceRoot":"","sources":["../../src/recipes/agentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentExecutor.js","sourceRoot":"","sources":["../../src/recipes/agentExecutor.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,13 @@ export interface YamlStep {
116
116
  * every revision reuses the base model (byte-identical to prior behavior).
117
117
  */
118
118
  escalate?: import("./pricing/costRouter.js").RouteCandidate[];
119
+ /**
120
+ * ADR-0021 information boundary — what this step declares it carries.
121
+ * Parsed by `parseDataPolicy` at the boundary, NOT here: an unrecognised
122
+ * classification must reach the decision point so it can fail closed,
123
+ * rather than being normalised away on the way in.
124
+ */
125
+ data_policy?: unknown;
119
126
  };
120
127
  into?: string;
121
128
  optional?: boolean;
@@ -68,6 +68,7 @@ import { evaluateWhen } from "./whenGuard.js";
68
68
  import { resolveWorkspaceRoot } from "./workspaceRoot.js";
69
69
  import "./tools/index.js";
70
70
  import { patchworkPath } from "../patchworkHome.js";
71
+ import { BoundaryReceiptLog } from "../privacy/boundaryReceiptLog.js";
71
72
  /**
72
73
  * Bundled-templates directory used as a third allowed root for nested-recipe
73
74
  * lookups (`recipe:` references with explicit paths). Resolved once at module
@@ -791,7 +792,12 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
791
792
  const runAgentText = async (prompt, driver, model, mcpAccess, downshift, providerOptions,
792
793
  // P0-5: carry the reviewed/judge step's opt-in tool sandbox into refine-loop
793
794
  // re-runs so a sandboxed step STAYS sandboxed across revisions/re-judges.
794
- sandboxOpts) => {
795
+ sandboxOpts,
796
+ // ADR-0021: a refine-loop re-run carries the SAME declared policy as the
797
+ // step it revises. Omitting it here would mean a `restricted` step is
798
+ // judged `restricted` on its first attempt and `internal` on every
799
+ // revision — the boundary loosening precisely where a step is retried.
800
+ dataPolicy) => {
795
801
  // Phase 4: route revisions too, so a downshift on the reviewed step also
796
802
  // applies to its refine-loop re-runs (no-op when downshift is absent).
797
803
  const routed = resolveRouting({ driver, model }, downshift, prompt, runBudget);
@@ -816,6 +822,7 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
816
822
  // Fail closed if a worker sandbox can't be enforced on the chosen driver.
817
823
  ...(deps.agentDisallowedTools?.length && { enforceSandbox: true }),
818
824
  ...(providerOptions && { providerOptions }),
825
+ ...(dataPolicy !== undefined && { boundary: { dataPolicy } }),
819
826
  }, buildAgentExecutorDeps(stepDeps, deps));
820
827
  runBudget.reconcile(
821
828
  // Prefer the driver executeAgent actually resolved+ran; fall back to
@@ -978,7 +985,11 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
978
985
  ...(reviewedAgent.disallowedTools !== undefined && {
979
986
  disallowedTools: reviewedAgent.disallowedTools,
980
987
  }),
981
- });
988
+ },
989
+ // The revision re-runs the REVIEWED step, so it carries the REVIEWED
990
+ // step's declared policy — not the judge's. Using the judge's would
991
+ // let a differently-labelled reviewer relabel the data being revised.
992
+ reviewedAgent.data_policy);
982
993
  if (!revised.ok) {
983
994
  // A failed / empty revision can't be re-judged — stop and treat the
984
995
  // loop as exhausted with the last good verdict still in place.
@@ -1025,7 +1036,10 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
1025
1036
  ...(agentCfg.disallowedTools !== undefined && {
1026
1037
  disallowedTools: agentCfg.disallowedTools,
1027
1038
  }),
1028
- });
1039
+ },
1040
+ // The re-judge re-runs the JUDGE step, so it carries the judge's own
1041
+ // declared policy.
1042
+ agentCfg.data_policy);
1029
1043
  if (!judged.ok) {
1030
1044
  // Audit 2026-06-03 (MEDIUM #17): a failed / silent-fail / empty
1031
1045
  // RE-JUDGE can't yield a trustworthy verdict. Mirror the revise-
@@ -1356,6 +1370,17 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
1356
1370
  ...(isJudge && {
1357
1371
  providerOptions: { responseFormat: { type: "json_object" } },
1358
1372
  }),
1373
+ // ADR-0021 — the step's DECLARED policy. Passed raw: an
1374
+ // unrecognised classification must reach `parseDataPolicy` at the
1375
+ // decision point so it can fail closed, rather than being
1376
+ // normalised away here. Without this the boundary judged every
1377
+ // step at the default `internal`, so a step declaring
1378
+ // `restricted` was dispatched to a remote model AND a receipt was
1379
+ // written asserting `internal` — a false-affirmative audit
1380
+ // record, which is worse than no record at all.
1381
+ ...(agentCfg.data_policy !== undefined && {
1382
+ boundary: { dataPolicy: agentCfg.data_policy },
1383
+ }),
1359
1384
  }, buildAgentExecutorDeps(stepDeps, deps));
1360
1385
  agentResult = agentReturn.text;
1361
1386
  runBudget.reconcile(
@@ -2496,9 +2521,70 @@ function resolveStepDeps(deps, scope) {
2496
2521
  function toAgentResult(v) {
2497
2522
  return typeof v === "string" ? { text: v } : v;
2498
2523
  }
2524
+ /**
2525
+ * Lazily-constructed receipt log, shared per process.
2526
+ *
2527
+ * Lazy because constructing it touches the filesystem (mkdir), and a runner
2528
+ * that never dispatches an agent step should not create the directory. Shared
2529
+ * because a per-call instance would restart `seq` at 1 on every dispatch —
2530
+ * the same per-instance-counter-on-a-shared-file defect that made 142 of 145
2531
+ * run-log seqs collide (#1324).
2532
+ */
2533
+ const _boundaryReceiptLogs = new Map();
2534
+ function boundaryReceiptLog() {
2535
+ // Keyed BY RESOLVED DIRECTORY, not a single instance.
2536
+ //
2537
+ // A plain singleton captures whichever home existed at first use and ignores
2538
+ // PATCHWORK_HOME afterwards — the same frozen-at-first-use defect as the
2539
+ // module-level RECIPES_DIR (#1265) and the OAuth redirect URI (#1266),
2540
+ // reintroduced by the fix for it. Caught because an end-to-end test set a
2541
+ // fresh home and its receipts went to the previous one.
2542
+ //
2543
+ // Still one instance PER DIRECTORY, which is the property that matters: a
2544
+ // per-call instance would restart `seq` at 1 on every dispatch, the
2545
+ // counter-on-a-shared-file bug that collided 142 of 145 run-log seqs
2546
+ // (#1324).
2547
+ const dir = patchworkPath();
2548
+ let log = _boundaryReceiptLogs.get(dir);
2549
+ if (!log) {
2550
+ log = new BoundaryReceiptLog({ dir });
2551
+ _boundaryReceiptLogs.set(dir, log);
2552
+ }
2553
+ return log;
2554
+ }
2499
2555
  function buildAgentExecutorDeps(stepDeps, runnerDeps, claudeCodeFnOverride) {
2500
2556
  const claudeCliFn = claudeCodeFnOverride ?? stepDeps.claudeCodeFn;
2501
2557
  return {
2558
+ // ── ADR-0021 information boundary ───────────────────────────────────────
2559
+ // Wired HERE because this is the single place agent-executor deps are
2560
+ // built for every dispatch site in this runner. Declaring the deps on
2561
+ // `AgentExecutorDeps` and supplying them nowhere is how a boundary ends up
2562
+ // correct, tested, and inert in production — the exact "built and
2563
+ // unreachable" state the destination registry was added to fix, one layer
2564
+ // further out.
2565
+ //
2566
+ // Both are read per call, not captured: an operator editing
2567
+ // `privacy.destinations` must take effect without a bridge restart, and
2568
+ // `loadConfig` is already mtime-gated so this is cheap.
2569
+ loadPrivacyConfigFn: () => loadPatchworkConfigSync().privacy,
2570
+ recordBoundaryDecisionFn: (r) => {
2571
+ // Fail-soft: a receipt that cannot be written must never affect the
2572
+ // decision it describes, which has already been made and enforced.
2573
+ try {
2574
+ boundaryReceiptLog().record({
2575
+ decision: r.decision,
2576
+ classification: r.classification,
2577
+ destinationId: r.destinationId,
2578
+ destinationType: r.destinationType,
2579
+ reason: r.reason,
2580
+ ...(r.categories && { categories: r.categories }),
2581
+ ...(r.redactCategories && { redactCategories: r.redactCategories }),
2582
+ });
2583
+ }
2584
+ catch {
2585
+ // never block on observability
2586
+ }
2587
+ },
2502
2588
  anthropicFn: async (prompt, model) => toAgentResult(await stepDeps.claudeFn(prompt, model)),
2503
2589
  providerDriverFn: async (driver, prompt, model, providerOptions) => toAgentResult(
2504
2590
  // Keep the 3-arg call shape when unconstrained (backward-compatible
@@ -1 +1 @@
1
- {"version":3,"file":"yamlRunner.js","sourceRoot":"","sources":["../../src/recipes/yamlRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yamlRunner.js","sourceRoot":"","sources":["../../src/recipes/yamlRunner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "patchwork-os",
3
- "version": "1.2.0-beta.2.canary.626",
3
+ "version": "1.2.0-beta.2.canary.628",
4
4
  "description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory — all on your machine, all under your policy.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",