patchwork-os 0.2.0-beta.13.canary.283 → 0.2.0-beta.13.canary.285

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.
@@ -37,7 +37,12 @@ type ApprovalFn = (input: {
37
37
  * ADD gating, never remove gating the operator's `approvalGate` required — even
38
38
  * on manual runs of a worker-owned recipe. Exported for orchestration tests.
39
39
  */
40
- export declare function buildWorkerAutonomyGate(recipeName: string, tierApprovalFn?: ApprovalFn, trustOpts?: import("./workers/runWorkerShadow.js").RunWorkerShadowOpts): Promise<ApprovalFn | null>;
40
+ export declare function buildWorkerAutonomyGate(recipeName: string, tierApprovalFn?: ApprovalFn, trustOpts?: import("./workers/runWorkerShadow.js").RunWorkerShadowOpts, ctxOpts?: {
41
+ /** Workspace root — git context-risk signals are gathered from here. */
42
+ workdir?: string;
43
+ /** Test injection: bypass the git collector with a fixed risk. */
44
+ contextRiskProvider?: () => Promise<import("./workers/contextRisk.js").ContextRisk | undefined>;
45
+ }): Promise<ApprovalFn | null>;
41
46
  /**
42
47
  * The `--disallowed-tools` an `agent` step must inherit when a worker owns this
43
48
  * recipe (worker.autonomy flag on). An agent step spawns a Claude subprocess
@@ -68,7 +68,7 @@ async function makeRecipeApprovalFn(gate) {
68
68
  * ADD gating, never remove gating the operator's `approvalGate` required — even
69
69
  * on manual runs of a worker-owned recipe. Exported for orchestration tests.
70
70
  */
71
- export async function buildWorkerAutonomyGate(recipeName, tierApprovalFn, trustOpts) {
71
+ export async function buildWorkerAutonomyGate(recipeName, tierApprovalFn, trustOpts, ctxOpts) {
72
72
  try {
73
73
  const { isEnabled, FLAG_WORKER_AUTONOMY } = await import("./featureFlags.js");
74
74
  if (!isEnabled(FLAG_WORKER_AUTONOMY))
@@ -81,8 +81,25 @@ export async function buildWorkerAutonomyGate(recipeName, tierApprovalFn, trustO
81
81
  const { getApprovalQueue } = await import("./approvalQueue.js");
82
82
  const queue = getApprovalQueue();
83
83
  const { worker, store } = trust;
84
+ // Context-risk: a live, situational DESCENDING de-rater resolved ONCE for the
85
+ // run (the working tree is ~constant during a run). Fail-soft — any error →
86
+ // no contextRisk → no de-rate (never widens). The decision then operates at
87
+ // min(earned, ceiling, contextCeiling).
88
+ let contextRisk;
89
+ try {
90
+ if (ctxOpts?.contextRiskProvider) {
91
+ contextRisk = await ctxOpts.contextRiskProvider();
92
+ }
93
+ else if (ctxOpts?.workdir) {
94
+ const { resolveGitContextRisk } = await import("./workers/contextRiskScorer.js");
95
+ contextRisk = await resolveGitContextRisk({ cwd: ctxOpts.workdir });
96
+ }
97
+ }
98
+ catch {
99
+ contextRisk = undefined;
100
+ }
84
101
  return async (input) => {
85
- const decision = decideWorkerAction(worker, input.toolId, input.params, store);
102
+ const decision = decideWorkerAction(worker, input.toolId, input.params, store, contextRisk ? { contextRisk } : undefined);
86
103
  // allow → defer to the tier gate so we never DROP tier-policy protection
87
104
  // (floor composition). When no tier fn is injected (approvalGate off),
88
105
  // a worker `allow` means flow.
@@ -918,7 +935,10 @@ export class RecipeOrchestration {
918
935
  // composition — it can only ADD gating, never drop tier-policy protection)
919
936
  // and the gate engages on automated runs too. Otherwise everything below is
920
937
  // byte-identical to pre-flip behaviour.
921
- const workerApprovalFn = await buildWorkerAutonomyGate(opts.name, tierApprovalFn);
938
+ const workerApprovalFn = await buildWorkerAutonomyGate(opts.name, tierApprovalFn, undefined,
939
+ // Gather live context-risk signals from the workspace so the gate can
940
+ // throttle a worker in a dangerous situation (huge diff, on trunk).
941
+ { workdir: this.deps.workdir });
922
942
  const requireApprovalFn = workerApprovalFn ?? tierApprovalFn;
923
943
  const gateAutomatedRuns = workerApprovalFn != null;
924
944
  // Agent-step bypass guard: when a worker owns this recipe, its agent steps
@@ -1 +1 @@
1
- {"version":3,"file":"recipeOrchestration.js","sourceRoot":"","sources":["../src/recipeOrchestration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recipeOrchestration.js","sourceRoot":"","sources":["../src/recipeOrchestration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { ContextRisk } from "./contextRisk.js";
2
+ /**
3
+ * The live producer behind the context-risk seam (workerGate / contextRisk.ts).
4
+ * Gathers cheap, dependency-light situational signals from the workspace and
5
+ * scores them into a `ContextRisk` the gate uses as a DESCENDING de-rater.
6
+ *
7
+ * Signals are deliberately the ones reliably available server-side during a
8
+ * recipe run (the bridge runs in a git repo): working-tree size + which branch.
9
+ * Diagnostics / coverage / CI are richer but require the extension / network and
10
+ * are added later. Everything is fail-soft: an unavailable signal simply doesn't
11
+ * contribute, and a total failure yields score 0 (no de-rate, never widens).
12
+ * See docs/worker-autonomy-policy-gate.md §3a.
13
+ */
14
+ /** Raw situational signals. All optional — absent ⇒ no contribution. */
15
+ export interface ContextSignals {
16
+ /** Uncommitted lines changed (added + deleted) vs HEAD. */
17
+ diffLines?: number;
18
+ /** Files with uncommitted changes vs HEAD. */
19
+ dirtyFiles?: number;
20
+ /** HEAD is the default branch (main/master) — acting on trunk is riskier
21
+ * than on a feature branch that can be reviewed before merge. */
22
+ onDefaultBranch?: boolean;
23
+ }
24
+ /**
25
+ * Pure scorer: signals → ContextRisk (0..1 + human reasons). Each signal
26
+ * contributes risk independently and they combine by NOISY-OR
27
+ * (`1 − ∏(1 − sᵢ)`), so several moderate signals compound toward "act with
28
+ * caution" without any single one needing to be severe. Higher = more dangerous
29
+ * to act RIGHT NOW. Pure + deterministic.
30
+ */
31
+ export declare function scoreContextRisk(signals: ContextSignals): ContextRisk;
32
+ /** Injectable command runner (returns stdout). Defaults to the bridge's
33
+ * allowlisted `execSafe` over `cwd`. Exposed so tests supply fake git output. */
34
+ export type ExecFn = (cmd: string, args: string[]) => Promise<string>;
35
+ /**
36
+ * Gather git working-tree signals. Fully fail-soft: any git error leaves the
37
+ * corresponding signal undefined (→ no contribution). Never throws.
38
+ */
39
+ export declare function collectGitContextSignals(opts: {
40
+ cwd: string;
41
+ exec?: ExecFn;
42
+ }): Promise<ContextSignals>;
43
+ /** Convenience: collect + score in one fail-soft call. Returns undefined when
44
+ * the situation is clean (score 0) so callers can omit the field. */
45
+ export declare function resolveGitContextRisk(opts: {
46
+ cwd: string;
47
+ exec?: ExecFn;
48
+ }): Promise<ContextRisk | undefined>;
@@ -0,0 +1,94 @@
1
+ import { execSafe } from "../tools/utils.js";
2
+ /**
3
+ * Pure scorer: signals → ContextRisk (0..1 + human reasons). Each signal
4
+ * contributes risk independently and they combine by NOISY-OR
5
+ * (`1 − ∏(1 − sᵢ)`), so several moderate signals compound toward "act with
6
+ * caution" without any single one needing to be severe. Higher = more dangerous
7
+ * to act RIGHT NOW. Pure + deterministic.
8
+ */
9
+ export function scoreContextRisk(signals) {
10
+ const contribs = [];
11
+ if (signals.diffLines !== undefined) {
12
+ if (signals.diffLines >= 2000)
13
+ contribs.push({
14
+ score: 0.9,
15
+ reason: `huge uncommitted diff (${signals.diffLines} lines)`,
16
+ });
17
+ else if (signals.diffLines >= 500)
18
+ contribs.push({
19
+ score: 0.5,
20
+ reason: `large uncommitted diff (${signals.diffLines} lines)`,
21
+ });
22
+ else if (signals.diffLines >= 200)
23
+ contribs.push({
24
+ score: 0.3,
25
+ reason: `sizeable uncommitted diff (${signals.diffLines} lines)`,
26
+ });
27
+ }
28
+ if (signals.dirtyFiles !== undefined && signals.dirtyFiles >= 20)
29
+ contribs.push({
30
+ score: 0.5,
31
+ reason: `${signals.dirtyFiles} files with uncommitted changes`,
32
+ });
33
+ if (signals.onDefaultBranch)
34
+ contribs.push({
35
+ score: 0.3,
36
+ reason: "operating directly on the default branch",
37
+ });
38
+ const score = contribs.length === 0
39
+ ? 0
40
+ : 1 - contribs.reduce((p, c) => p * (1 - c.score), 1);
41
+ return {
42
+ score,
43
+ ...(contribs.length > 0 && { reasons: contribs.map((c) => c.reason) }),
44
+ };
45
+ }
46
+ /**
47
+ * Gather git working-tree signals. Fully fail-soft: any git error leaves the
48
+ * corresponding signal undefined (→ no contribution). Never throws.
49
+ */
50
+ export async function collectGitContextSignals(opts) {
51
+ const exec = opts.exec ??
52
+ (async (cmd, args) => (await execSafe(cmd, args, { cwd: opts.cwd, timeout: 5000 })).stdout);
53
+ const signals = {};
54
+ try {
55
+ // `diff HEAD` = staged + unstaged vs the last commit (the full uncommitted
56
+ // delta). `--numstat` is `<added>\t<deleted>\t<path>` per file ("-" binary).
57
+ const numstat = await exec("git", ["diff", "HEAD", "--numstat"]);
58
+ let lines = 0;
59
+ let files = 0;
60
+ for (const row of numstat.split("\n")) {
61
+ const m = /^(\d+|-)\t(\d+|-)\t/.exec(row);
62
+ if (!m)
63
+ continue;
64
+ files++;
65
+ lines +=
66
+ (m[1] === "-" ? 0 : Number(m[1])) + (m[2] === "-" ? 0 : Number(m[2]));
67
+ }
68
+ signals.diffLines = lines;
69
+ signals.dirtyFiles = files;
70
+ }
71
+ catch {
72
+ /* git unavailable / not a repo → leave diff signals undefined */
73
+ }
74
+ try {
75
+ const branch = (await exec("git", ["rev-parse", "--abbrev-ref", "HEAD"])).trim();
76
+ signals.onDefaultBranch = branch === "main" || branch === "master";
77
+ }
78
+ catch {
79
+ /* ignore */
80
+ }
81
+ return signals;
82
+ }
83
+ /** Convenience: collect + score in one fail-soft call. Returns undefined when
84
+ * the situation is clean (score 0) so callers can omit the field. */
85
+ export async function resolveGitContextRisk(opts) {
86
+ try {
87
+ const risk = scoreContextRisk(await collectGitContextSignals(opts));
88
+ return risk.score > 0 ? risk : undefined;
89
+ }
90
+ catch {
91
+ return undefined;
92
+ }
93
+ }
94
+ //# sourceMappingURL=contextRiskScorer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contextRiskScorer.js","sourceRoot":"","sources":["../../src/workers/contextRiskScorer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AA2B7C;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACtD,MAAM,QAAQ,GAA6C,EAAE,CAAC;IAE9D,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI;YAC3B,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,0BAA0B,OAAO,CAAC,SAAS,SAAS;aAC7D,CAAC,CAAC;aACA,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG;YAC/B,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,2BAA2B,OAAO,CAAC,SAAS,SAAS;aAC9D,CAAC,CAAC;aACA,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG;YAC/B,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,8BAA8B,OAAO,CAAC,SAAS,SAAS;aACjE,CAAC,CAAC;IACP,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE;QAC9D,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,iCAAiC;SAC/D,CAAC,CAAC;IACL,IAAI,OAAO,CAAC,eAAe;QACzB,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,0CAA0C;SACnD,CAAC,CAAC;IAEL,MAAM,KAAK,GACT,QAAQ,CAAC,MAAM,KAAK,CAAC;QACnB,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO;QACL,KAAK;QACL,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;KACvE,CAAC;AACJ,CAAC;AAMD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAG9C;IACC,MAAM,IAAI,GACR,IAAI,CAAC,IAAI;QACT,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACnB,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,IAAI,CAAC;QACH,2EAA2E;QAC3E,6EAA6E;QAC7E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;QACjE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,KAAK,EAAE,CAAC;YACR,KAAK;gBACH,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;IACnE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CACb,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CACzD,CAAC,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,eAAe,GAAG,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,QAAQ,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;sEACsE;AACtE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAG3C;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -15,6 +15,9 @@ export interface RunWorkerShadowOpts {
15
15
  patchworkDir?: string;
16
16
  /** ~/.claude/ide (activity-*.jsonl) override (tests). */
17
17
  ideDir?: string;
18
+ /** Wall-clock override (tests) for durable-outcome labelling. Defaults to
19
+ * Date.now() — supplied here (the I/O entry) so the observer stays pure. */
20
+ now?: number;
18
21
  }
19
22
  export interface WorkerShadowData {
20
23
  workers: WorkerShadowReport[];
@@ -121,7 +121,12 @@ export function getWorkerShadowData(opts = {}) {
121
121
  : [];
122
122
  const decisions = workers.length ? readDecisions(ideDir) : [];
123
123
  return {
124
- workers: buildShadowReport(workers, runs, decisions),
124
+ // `now` drives durable-outcome labelling (recent non-reversible successes
125
+ // are withheld until they survive the durability window). Real Date.now() in
126
+ // production; tests inject opts.now.
127
+ workers: buildShadowReport(workers, runs, decisions, undefined, {
128
+ now: opts.now ?? Date.now(),
129
+ }),
125
130
  runsScanned: runs.length,
126
131
  decisionsScanned: decisions.length,
127
132
  workersDir,
@@ -143,7 +148,12 @@ export function loadWorkerTrustForRecipe(recipeName, opts = {}) {
143
148
  const workers = loadWorkersFromDir(workersDir);
144
149
  if (!workers.length)
145
150
  return null;
146
- const observer = new WorkerShadowObserver(workers);
151
+ // Same durable-outcome labelling as the dial (one source of truth): the live
152
+ // gate must not count a recent non-reversible success that could still be
153
+ // reverted. Real Date.now() in production; tests inject opts.now.
154
+ const observer = new WorkerShadowObserver(workers, {
155
+ now: opts.now ?? Date.now(),
156
+ });
147
157
  const worker = observer.workerForRecipe(recipeName);
148
158
  if (!worker)
149
159
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"runWorkerShadow.js","sourceRoot":"","sources":["../../src/workers/runWorkerShadow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runWorkerShadow.js","sourceRoot":"","sources":["../../src/workers/runWorkerShadow.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type Reversibility } from "./actionClass.js";
1
2
  import { type GraduationConfig } from "./graduation.js";
2
3
  import { type WorkerManifest } from "./worker.js";
3
4
  import { type AuditEvent, type BoardRow, WorkerLevelStore } from "./workerLevelStore.js";
@@ -57,14 +58,41 @@ export interface WorkerShadowReport {
57
58
  agreed: number;
58
59
  divergences: Divergence[];
59
60
  }
61
+ /** Default durability window — a non-reversible success must survive this long
62
+ * before it counts as earned trust. 24h is long enough to catch a revert /
63
+ * close-as-junk / rollback, short enough that a genuinely-good action graduates
64
+ * within a day. */
65
+ export declare const DEFAULT_DURABILITY_WINDOW_MS: number;
66
+ /**
67
+ * Durable-outcome label. `good = step.status:ok` is an OPTIMISTIC proxy: a PR
68
+ * that merged, an issue that filed — but a junk issue closed seconds later, or a
69
+ * commit reverted within the hour, "succeeded" at the moment yet is not earned
70
+ * trust. So a SUCCESS on a non-reversible (compensable/irreversible) action is
71
+ * "durable" — i.e. counts as evidence — only once it has survived the durability
72
+ * window. Reversible successes (undoable / re-runnable: reads, ledgered writes,
73
+ * local commits, CI) are always durable. Failures are unaffected (a failure is
74
+ * durable evidence of failure regardless of age).
75
+ *
76
+ * This only ever WITHHOLDS recent risky successes (reduces evidence → lower
77
+ * trust → more gating), so it never widens autonomy. See
78
+ * docs/worker-autonomy-policy-gate.md §3d.
79
+ */
80
+ export declare function isDurableSuccess(reversibility: Reversibility, runAt: number, now: number, windowMs: number): boolean;
60
81
  export declare class WorkerShadowObserver {
61
82
  private readonly store;
62
83
  private readonly cfg;
63
84
  private readonly workers;
64
85
  private readonly compare;
86
+ /** Wall-clock supplied by the I/O entry (the observer stays pure — no
87
+ * Date.now). When set, durable-outcome labelling is active; when undefined,
88
+ * the prior status-only behaviour is preserved (back-compat for pure tests). */
89
+ private readonly now?;
90
+ private readonly durabilityWindowMs;
65
91
  constructor(workers: WorkerManifest[], opts?: {
66
92
  store?: WorkerLevelStore;
67
93
  cfg?: GraduationConfig;
94
+ now?: number;
95
+ durabilityWindowMs?: number;
68
96
  });
69
97
  /**
70
98
  * The populated level store. Exposed so the LIVE worker-autonomy gate
@@ -4,15 +4,47 @@ import { DEFAULT_GRADUATION_CONFIG, } from "./graduation.js";
4
4
  import { recommend } from "./shadowGate.js";
5
5
  import { ownsAction, ownsClassKey, priorFor, } from "./worker.js";
6
6
  import { WorkerLevelStore, } from "./workerLevelStore.js";
7
+ /** Default durability window — a non-reversible success must survive this long
8
+ * before it counts as earned trust. 24h is long enough to catch a revert /
9
+ * close-as-junk / rollback, short enough that a genuinely-good action graduates
10
+ * within a day. */
11
+ export const DEFAULT_DURABILITY_WINDOW_MS = 24 * 60 * 60 * 1000;
12
+ /**
13
+ * Durable-outcome label. `good = step.status:ok` is an OPTIMISTIC proxy: a PR
14
+ * that merged, an issue that filed — but a junk issue closed seconds later, or a
15
+ * commit reverted within the hour, "succeeded" at the moment yet is not earned
16
+ * trust. So a SUCCESS on a non-reversible (compensable/irreversible) action is
17
+ * "durable" — i.e. counts as evidence — only once it has survived the durability
18
+ * window. Reversible successes (undoable / re-runnable: reads, ledgered writes,
19
+ * local commits, CI) are always durable. Failures are unaffected (a failure is
20
+ * durable evidence of failure regardless of age).
21
+ *
22
+ * This only ever WITHHOLDS recent risky successes (reduces evidence → lower
23
+ * trust → more gating), so it never widens autonomy. See
24
+ * docs/worker-autonomy-policy-gate.md §3d.
25
+ */
26
+ export function isDurableSuccess(reversibility, runAt, now, windowMs) {
27
+ if (reversibility === "reversible")
28
+ return true;
29
+ return runAt <= now - windowMs;
30
+ }
7
31
  export class WorkerShadowObserver {
8
32
  store;
9
33
  cfg;
10
34
  workers;
11
35
  compare = new Map();
36
+ /** Wall-clock supplied by the I/O entry (the observer stays pure — no
37
+ * Date.now). When set, durable-outcome labelling is active; when undefined,
38
+ * the prior status-only behaviour is preserved (back-compat for pure tests). */
39
+ now;
40
+ durabilityWindowMs;
12
41
  constructor(workers, opts = {}) {
13
42
  this.workers = workers;
14
43
  this.store = opts.store ?? new WorkerLevelStore();
15
44
  this.cfg = opts.cfg ?? DEFAULT_GRADUATION_CONFIG;
45
+ this.now = opts.now;
46
+ this.durabilityWindowMs =
47
+ opts.durabilityWindowMs ?? DEFAULT_DURABILITY_WINDOW_MS;
16
48
  }
17
49
  /**
18
50
  * The populated level store. Exposed so the LIVE worker-autonomy gate
@@ -50,6 +82,16 @@ export class WorkerShadowObserver {
50
82
  if (step.status === "error" &&
51
83
  categoriseHaltReason(step.haltReason) === "approval_rejected")
52
84
  continue;
85
+ // Durable-outcome label: a recent SUCCESS on a non-reversible action is
86
+ // provisional (a filed issue / pushed commit / merged PR can be reverted
87
+ // or closed-as-junk minutes later), so it is NOT yet counted as evidence.
88
+ // Only active when `now` was supplied by the I/O entry; otherwise the prior
89
+ // status-only fold is used. Withholds evidence only → never widens.
90
+ if (this.now !== undefined && step.status === "ok") {
91
+ const ac = classifyActionClass(step.tool);
92
+ if (!isDurableSuccess(ac.reversibility, run.at, this.now, this.durabilityWindowMs))
93
+ continue; // pending — survives the window before it earns trust
94
+ }
53
95
  this.store.apply(worker.id, { toolName: step.tool, good: step.status === "ok", at: run.at }, { prior, cfg: this.cfg });
54
96
  }
55
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shadowObserver.js","sourceRoot":"","sources":["../../src/workers/shadowObserver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shadowObserver.js","sourceRoot":"","sources":["../../src/workers/shadowObserver.ts"],"names":[],"mappings":"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"}
@@ -7,5 +7,8 @@ import type { WorkerManifest } from "./worker.js";
7
7
  * that moment (not the final state). Pure — the I/O entry (runWorkerShadow)
8
8
  * supplies the records read from the real logs.
9
9
  */
10
- export declare function buildShadowReport(workers: WorkerManifest[], runs: RunRecord[], decisions: DecisionRecord[], cfg?: GraduationConfig): WorkerShadowReport[];
10
+ export declare function buildShadowReport(workers: WorkerManifest[], runs: RunRecord[], decisions: DecisionRecord[], cfg?: GraduationConfig, opts?: {
11
+ now?: number;
12
+ durabilityWindowMs?: number;
13
+ }): WorkerShadowReport[];
11
14
  export declare function formatShadowReport(reports: WorkerShadowReport[]): string;
@@ -5,8 +5,14 @@ import { WorkerShadowObserver, } from "./shadowObserver.js";
5
5
  * that moment (not the final state). Pure — the I/O entry (runWorkerShadow)
6
6
  * supplies the records read from the real logs.
7
7
  */
8
- export function buildShadowReport(workers, runs, decisions, cfg) {
9
- const obs = new WorkerShadowObserver(workers, { cfg });
8
+ export function buildShadowReport(workers, runs, decisions, cfg, opts = {}) {
9
+ const obs = new WorkerShadowObserver(workers, {
10
+ cfg,
11
+ ...(opts.now !== undefined && { now: opts.now }),
12
+ ...(opts.durabilityWindowMs !== undefined && {
13
+ durabilityWindowMs: opts.durabilityWindowMs,
14
+ }),
15
+ });
10
16
  const merged = [
11
17
  ...runs.map((r) => ({ at: r.at, run: r })),
12
18
  ...decisions.map((d) => ({ at: d.at, dec: d })),
@@ -1 +1 @@
1
- {"version":3,"file":"shadowReport.js","sourceRoot":"","sources":["../../src/workers/shadowReport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shadowReport.js","sourceRoot":"","sources":["../../src/workers/shadowReport.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "patchwork-os",
3
- "version": "0.2.0-beta.13.canary.283",
3
+ "version": "0.2.0-beta.13.canary.285",
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",