@jmanuelcorral/openteam 0.19.0 → 0.20.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 (71) hide show
  1. package/README.es.md +10 -2
  2. package/README.md +9 -2
  3. package/dist/certificates/graph-release-certificate.json +2 -2
  4. package/dist/certificates/graph-shadow-certificate.json +2 -2
  5. package/dist/cli/consoleServe.d.ts +16 -0
  6. package/dist/cli/consoleServe.d.ts.map +1 -1
  7. package/dist/cli/graphOperator.d.ts +10 -1
  8. package/dist/cli/graphOperator.d.ts.map +1 -1
  9. package/dist/cli/lifecycleHistoryProvider.d.ts +21 -0
  10. package/dist/cli/lifecycleHistoryProvider.d.ts.map +1 -0
  11. package/dist/cli.d.ts +3 -1
  12. package/dist/cli.d.ts.map +1 -1
  13. package/dist/cli.js +6163 -1632
  14. package/dist/config/errors.d.ts.map +1 -1
  15. package/dist/config/schema.d.ts +31 -1
  16. package/dist/config/schema.d.ts.map +1 -1
  17. package/dist/console/assets.d.ts +22 -1
  18. package/dist/console/assets.d.ts.map +1 -1
  19. package/dist/console/render.d.ts +12 -0
  20. package/dist/console/render.d.ts.map +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +2849 -261
  23. package/dist/lifecycle/contracts.d.ts +618 -0
  24. package/dist/lifecycle/contracts.d.ts.map +1 -0
  25. package/dist/lifecycle/historyReader.d.ts +11 -0
  26. package/dist/lifecycle/historyReader.d.ts.map +1 -0
  27. package/dist/lifecycle/historySourceError.d.ts +7 -0
  28. package/dist/lifecycle/historySourceError.d.ts.map +1 -0
  29. package/dist/lifecycle/project.d.ts +3 -0
  30. package/dist/lifecycle/project.d.ts.map +1 -0
  31. package/dist/lifecycle/root.d.ts +3 -0
  32. package/dist/lifecycle/root.d.ts.map +1 -0
  33. package/dist/lifecycle/runtimeRecorder.d.ts +6 -0
  34. package/dist/lifecycle/runtimeRecorder.d.ts.map +1 -0
  35. package/dist/lifecycle/schema.d.ts +487 -0
  36. package/dist/lifecycle/schema.d.ts.map +1 -0
  37. package/dist/messages/index.d.ts +1 -0
  38. package/dist/messages/index.d.ts.map +1 -1
  39. package/dist/messages/lifecycle.d.ts +95 -0
  40. package/dist/messages/lifecycle.d.ts.map +1 -0
  41. package/dist/messages/lifecycleRuntime.d.ts +4 -0
  42. package/dist/messages/lifecycleRuntime.d.ts.map +1 -0
  43. package/dist/messages/lifecycleStorage.d.ts +4 -0
  44. package/dist/messages/lifecycleStorage.d.ts.map +1 -0
  45. package/dist/orchestrator/coordinator.d.ts +11 -1
  46. package/dist/orchestrator/coordinator.d.ts.map +1 -1
  47. package/dist/orchestrator/graphIngress.d.ts +5 -0
  48. package/dist/orchestrator/graphIngress.d.ts.map +1 -1
  49. package/dist/orchestrator/graphRuntime.d.ts +13 -1
  50. package/dist/orchestrator/graphRuntime.d.ts.map +1 -1
  51. package/dist/orchestrator/subsessions.d.ts +3 -0
  52. package/dist/orchestrator/subsessions.d.ts.map +1 -1
  53. package/dist/plugin/orchestrateTool.d.ts +3 -0
  54. package/dist/plugin/orchestrateTool.d.ts.map +1 -1
  55. package/dist/storage/lifecycle/codec.d.ts +19 -0
  56. package/dist/storage/lifecycle/codec.d.ts.map +1 -0
  57. package/dist/storage/lifecycle/fsLifecycleJournal.d.ts +3 -0
  58. package/dist/storage/lifecycle/fsLifecycleJournal.d.ts.map +1 -0
  59. package/dist/storage/lifecycle/fsLifecycleSupport.d.ts +17 -0
  60. package/dist/storage/lifecycle/fsLifecycleSupport.d.ts.map +1 -0
  61. package/dist/storage/lifecycle/fsLifecycleWriterLivenessProbe.d.ts +3 -0
  62. package/dist/storage/lifecycle/fsLifecycleWriterLivenessProbe.d.ts.map +1 -0
  63. package/dist/web/graphRoute.d.ts +39 -1
  64. package/dist/web/graphRoute.d.ts.map +1 -1
  65. package/dist/web/server.d.ts +19 -0
  66. package/dist/web/server.d.ts.map +1 -1
  67. package/dist/web/start.d.ts +11 -0
  68. package/dist/web/start.d.ts.map +1 -1
  69. package/dist/web/watch.d.ts +17 -2
  70. package/dist/web/watch.d.ts.map +1 -1
  71. package/package.json +1 -1
@@ -2,6 +2,7 @@ import { z } from "zod";
2
2
  import type { BudgetState } from "../capabilities/budget";
3
3
  import type { ModelCapabilityProfile } from "../capabilities/types";
4
4
  import type { OpenTeamConfig } from "../config/schema";
5
+ import type { BoundedNormalizedSessionFailure, LifecycleRunRecorder } from "../lifecycle/contracts";
5
6
  import type { RuntimeConcurrencyLimiter } from "../local/concurrency";
6
7
  import type { LocalRuntimeId } from "../local/types";
7
8
  import { type AgentExecutionPolicy } from "../router/executionPolicy";
@@ -134,6 +135,14 @@ export type CoordinatorDeps = {
134
135
  readReportArtifact: (reportPath: string) => Promise<string | undefined>;
135
136
  reportArtifactExists: (reportPath: string) => Promise<boolean>;
136
137
  };
138
+ export type RoleLifecycleContext = {
139
+ readonly recorder: LifecycleRunRecorder;
140
+ readonly rootOperationID: string;
141
+ };
142
+ export type RunRoleTasksOptions = {
143
+ readonly batchID?: string;
144
+ readonly lifecycle?: RoleLifecycleContext;
145
+ };
137
146
  export type CorrelatedCostRecord = CostRecord & {
138
147
  decisionID: string;
139
148
  agent: string;
@@ -142,6 +151,7 @@ export type CorrelatedCostRecord = CostRecord & {
142
151
  taskID?: string;
143
152
  failureReason?: string;
144
153
  failureStage?: SubsessionResult["failureStage"];
154
+ normalizedFailure?: BoundedNormalizedSessionFailure;
145
155
  };
146
156
  export type RoleTaskResult = {
147
157
  decision: RoutingDecision;
@@ -318,5 +328,5 @@ export type RoleBatchResult = {
318
328
  * wave 0. Pure and deterministic: same inputs produce the same waves.
319
329
  */
320
330
  export declare function topologicalWaves(inputs: readonly RoleTaskInput[]): RoleTaskInput[][];
321
- export declare function runRoleTasks(inputs: readonly RoleTaskInput[], deps: CoordinatorDeps): Promise<RoleBatchResult>;
331
+ export declare function runRoleTasks(inputs: readonly RoleTaskInput[], deps: CoordinatorDeps, options?: RunRoleTasksOptions): Promise<RoleBatchResult>;
322
332
  //# sourceMappingURL=coordinator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/coordinator.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@
19
19
  * into a total (never throws) and reference-only result.
20
20
  */
21
21
  import type { ResolvedGraphConfig } from "../config/resolve";
22
+ import type { LifecycleRecordingStatus, LifecycleRunSource, RuntimeLifecycleRecorder } from "../lifecycle/contracts";
22
23
  import type { GraphJournal } from "../storage/graph/provider";
23
24
  import type { WorkspaceLease } from "../storage/graph/workspaceLease";
24
25
  import type { GraphEffectExecutor } from "./graphEffects";
@@ -80,6 +81,7 @@ export type IngressOutcome = ({
80
81
  readonly kind: "accepted";
81
82
  readonly runID: string;
82
83
  readonly step: RuntimeStepOutcome;
84
+ readonly recording?: LifecycleRecordingStatus;
83
85
  } | {
84
86
  readonly kind: "revision";
85
87
  readonly runID: string;
@@ -94,6 +96,7 @@ export type IngressOutcome = ({
94
96
  readonly runID: string;
95
97
  readonly cancelledNodeIDs: readonly string[];
96
98
  readonly abortNodeIDs: readonly string[];
99
+ readonly recording?: LifecycleRecordingStatus;
97
100
  } | {
98
101
  readonly kind: "error";
99
102
  readonly code: IngressErrorCode;
@@ -120,6 +123,8 @@ export type GraphIngressDeps = {
120
123
  readonly lease: WorkspaceLease;
121
124
  readonly effects: GraphEffectExecutor;
122
125
  readonly holder: string;
126
+ readonly lifecycleRecorder?: RuntimeLifecycleRecorder | undefined;
127
+ readonly lifecycleSource?: LifecycleRunSource;
123
128
  readonly revisionLimit?: number;
124
129
  };
125
130
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"graphIngress.d.ts","sourceRoot":"","sources":["../../src/orchestrator/graphIngress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphIngress.d.ts","sourceRoot":"","sources":["../../src/orchestrator/graphIngress.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { GraphSpecV1 } from "../graph/schema";
2
2
  import type { RunStatus } from "../graph/types";
3
- import type { GraphJournal } from "../storage/graph/provider";
3
+ import type { LifecycleOperationObservationExpectation, LifecycleRunRecorder } from "../lifecycle/contracts";
4
+ import type { GraphJournal, LoadedJournal } from "../storage/graph/provider";
4
5
  import type { WorkspaceLease } from "../storage/graph/workspaceLease";
5
6
  import type { GraphEffectExecutor } from "./graphEffects";
6
7
  /**
@@ -54,6 +55,7 @@ export type GraphRuntimeDeps = {
54
55
  readonly lease: WorkspaceLease;
55
56
  readonly effects: GraphEffectExecutor;
56
57
  readonly holder: string;
58
+ readonly lifecycle?: LifecycleRunRecorder;
57
59
  /** Attempt limit per retryable node; defaults to `DEFAULT_RETRY_LIMIT`. */
58
60
  readonly retryLimit?: number;
59
61
  };
@@ -66,5 +68,15 @@ export interface GraphRuntime {
66
68
  /** Repeats `step` until a non-dispatching state (terminal, completed, etc.). */
67
69
  runToCompletion(): Promise<RuntimeStepOutcome>;
68
70
  }
71
+ export type GraphLifecycleExpectationOptions = {
72
+ readonly closingStatus?: Exclude<RunStatus, "running">;
73
+ readonly cancelledNodeIDs?: readonly string[];
74
+ readonly retryLimit?: number;
75
+ };
76
+ /**
77
+ * Translates authoritative Graph progress into observations that must already
78
+ * exist in the lifecycle prefix. It never creates lifecycle history.
79
+ */
80
+ export declare function graphLifecycleExpectations(loaded: LoadedJournal, options?: GraphLifecycleExpectationOptions): readonly LifecycleOperationObservationExpectation[];
69
81
  export declare function createGraphRuntime(deps: GraphRuntimeDeps): GraphRuntime;
70
82
  //# sourceMappingURL=graphRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graphRuntime.d.ts","sourceRoot":"","sources":["../../src/orchestrator/graphRuntime.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EACV,YAAY,EAGb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,oCAAoC;AACpC,MAAM,MAAM,kBAAkB,GAC1B;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GAC9B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GACjE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC;AAE9D,2EAA2E;AAC3E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,2EAA2E;IAC3E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,sDAAsD;AACtD,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,+DAA+D;IAC/D,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpC,gFAAgF;IAChF,eAAe,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChD;AAmDD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY,CAkLvE"}
1
+ {"version":3,"file":"graphRuntime.d.ts","sourceRoot":"","sources":["../../src/orchestrator/graphRuntime.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAIV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAKV,wCAAwC,EACxC,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACV,YAAY,EAEZ,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,oCAAoC;AACpC,MAAM,MAAM,kBAAkB,GAC1B;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GAC9B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GACjE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC;AAE9D,2EAA2E;AAC3E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C,2EAA2E;IAC3E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,sDAAsD;AACtD,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,+DAA+D;IAC/D,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpC,gFAAgF;IAChF,eAAe,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChD;AAoED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAiBF;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,gCAAqC,GAC7C,SAAS,wCAAwC,EAAE,CA4FrD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY,CAyTvE"}
@@ -1,3 +1,4 @@
1
+ import type { BoundedNormalizedSessionFailure } from "../lifecycle/contracts";
1
2
  import type { ModelSelection } from "../router/types";
2
3
  export type OpencodeSessionCreateArgs = {
3
4
  body?: {
@@ -96,6 +97,7 @@ export type SubsessionResult = {
96
97
  * uncertain prior generation. Present only on failures.
97
98
  */
98
99
  retrySafe?: boolean;
100
+ normalizedFailure?: BoundedNormalizedSessionFailure;
99
101
  };
100
102
  export type SubsessionDeps = {
101
103
  timeoutMs?: number;
@@ -103,6 +105,7 @@ export type SubsessionDeps = {
103
105
  statusPollMs: number;
104
106
  now: () => number;
105
107
  delay: (ms: number) => Promise<void>;
108
+ onSessionCreated?: (sessionID: string) => Promise<void>;
106
109
  };
107
110
  export declare const DEFAULT_ABORT_GRACE_MS = 2000;
108
111
  export declare const DEFAULT_STATUS_POLL_MS = 100;
@@ -1 +1 @@
1
- {"version":3,"file":"subsessions.d.ts","sourceRoot":"","sources":["../../src/orchestrator/subsessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subsessions.d.ts","sourceRoot":"","sources":["../../src/orchestrator/subsessions.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { z } from "zod";
3
3
  import type { ModelCapabilityProfile } from "../capabilities/types";
4
4
  import type { GraphMode, OpenTeamConfig } from "../config/schema";
5
5
  import type { GraphEventV1, GraphSpecV1 } from "../graph/schema";
6
+ import type { BoundedNormalizedSessionFailure, RuntimeLifecycleRecorder } from "../lifecycle/contracts";
6
7
  import type { RuntimeConcurrencyLimiter } from "../local/concurrency";
7
8
  import type { LocalRuntimeId } from "../local/types";
8
9
  import { type CoordinatorDeps, type RoleTaskResult } from "../orchestrator/coordinator";
@@ -150,6 +151,7 @@ export type SdkClientPort = {
150
151
  }>;
151
152
  };
152
153
  };
154
+ export declare function normalizeSdkSessionFailure(error: unknown, stage: "create" | "prompt"): BoundedNormalizedSessionFailure;
153
155
  /**
154
156
  * Adapts the opencode SDK client to `OpencodeSessionClient`.
155
157
  *
@@ -283,6 +285,7 @@ export type OrchestrateDeps = {
283
285
  * `undefined` and must never throw.
284
286
  */
285
287
  readonly readReportArtifact: (reportPath: string) => Promise<string | undefined>;
288
+ readonly lifecycleRecorder?: RuntimeLifecycleRecorder;
286
289
  };
287
290
  /**
288
291
  * Builds a `GraphSpecV1` from orchestrate payload assignments. Each assignment
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrateTool.d.ts","sourceRoot":"","sources":["../../src/plugin/orchestrateTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrateTool.d.ts","sourceRoot":"","sources":["../../src/plugin/orchestrateTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { LifecycleEventV1 } from "../../lifecycle/contracts";
2
+ export declare const LIFECYCLE_CODEC_VERSION: 1;
3
+ export declare const LIFECYCLE_GENESIS_DIGEST: string;
4
+ export type LifecycleCodecErrorCode = "bad-frame" | "bad-version" | "bad-sequence" | "chain-break" | "bad-checksum";
5
+ export declare class LifecycleCodecError extends Error {
6
+ readonly code: LifecycleCodecErrorCode;
7
+ constructor(code: LifecycleCodecErrorCode);
8
+ }
9
+ export declare function encodeLifecycleFrame(previousDigest: string, event: LifecycleEventV1): {
10
+ readonly line: string;
11
+ readonly digest: string;
12
+ };
13
+ export declare function encodeLifecycleJournal(events: readonly LifecycleEventV1[]): string;
14
+ export declare function decodeLifecycleJournal(text: string): {
15
+ readonly events: readonly LifecycleEventV1[];
16
+ readonly digest: string;
17
+ readonly partialTail: boolean;
18
+ };
19
+ //# sourceMappingURL=codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../../src/storage/lifecycle/codec.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAClD,eAAO,MAAM,wBAAwB,QAEpC,CAAC;AAmCF,MAAM,MAAM,uBAAuB,GAC/B,WAAW,GACX,aAAa,GACb,cAAc,GACd,aAAa,GACb,cAAc,CAAC;AAEnB,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IAEvC,YAAY,IAAI,EAAE,uBAAuB,EAIxC;CACF;AAED,wBAAgB,oBAAoB,CAClC,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,gBAAgB,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAYpD;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,MAAM,CASR;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IACpD,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B,CAkDA"}
@@ -0,0 +1,3 @@
1
+ import type { CreateFsLifecycleJournal } from "../../lifecycle/contracts";
2
+ export declare const createFsLifecycleJournal: CreateFsLifecycleJournal;
3
+ //# sourceMappingURL=fsLifecycleJournal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsLifecycleJournal.d.ts","sourceRoot":"","sources":["../../../src/storage/lifecycle/fsLifecycleJournal.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,wBAAwB,EAWzB,MAAM,2BAA2B,CAAC;AA6NnC,eAAO,MAAM,wBAAwB,EAAE,wBA2YtC,CAAC"}
@@ -0,0 +1,17 @@
1
+ export declare class LifecycleFsError extends Error {
2
+ readonly kind: "conflict" | "corrupt" | "missing" | "unavailable";
3
+ constructor(kind: LifecycleFsError["kind"]);
4
+ }
5
+ export declare function isMissingFsError(error: unknown): boolean;
6
+ export declare function validateRunID(runID: string): void;
7
+ export declare function resolvedLifecycleRoot(root: string): string;
8
+ export declare function directRunPath(root: string, runID: string): string;
9
+ export declare function assertExistingSafeRun(root: string, runID: string): string;
10
+ export declare function assertSafeRegularFile(path: string): void;
11
+ export declare function readUtf8(path: string): string | undefined;
12
+ export declare function writeDurable(path: string, content: string): void;
13
+ export declare function appendDurable(path: string, content: string): void;
14
+ export declare function writeDurableAtomically(path: string, content: string): void;
15
+ export declare function readLockContents(path: string): string | undefined;
16
+ export declare function withRunMutationLock<T>(runDir: string, mutate: () => T): T;
17
+ //# sourceMappingURL=fsLifecycleSupport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsLifecycleSupport.d.ts","sourceRoot":"","sources":["../../../src/storage/lifecycle/fsLifecycleSupport.ts"],"names":[],"mappings":"AAqBA,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;IAElE,YAAY,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAIzC;CACF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOxD;AAWD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAe1D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAOjE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA8BzE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAaxD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUzD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAQhE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAQjE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAW1E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYjE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CA+BzE"}
@@ -0,0 +1,3 @@
1
+ import type { CreateFsLifecycleWriterLivenessProbe } from "../../lifecycle/contracts";
2
+ export declare const createFsLifecycleWriterLivenessProbe: CreateFsLifecycleWriterLivenessProbe;
3
+ //# sourceMappingURL=fsLifecycleWriterLivenessProbe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsLifecycleWriterLivenessProbe.d.ts","sourceRoot":"","sources":["../../../src/storage/lifecycle/fsLifecycleWriterLivenessProbe.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oCAAoC,EAGrC,MAAM,2BAA2B,CAAC;AASnC,eAAO,MAAM,oCAAoC,EAAE,oCAiD/C,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { IncomingMessage, ServerResponse } from "node:http";
2
+ import type { LifecycleHistoryReader, LifecycleHistoryResponseV1 } from "../lifecycle/contracts";
2
3
  import type { GraphViewProjectionV1 } from "../telemetry/graphView";
3
4
  /**
4
5
  * Additive HTTP endpoint serving the graph view's reference-only projection
@@ -39,10 +40,20 @@ export type GraphDisabledEnvelope = {
39
40
  /** Remediation text naming both flags the operator has to set. */
40
41
  export declare const GRAPH_DISABLED_REMEDIATION: 'Agent tree is off. In .opencode/openteam.json set graph.mode to a value other than "off" and console.graphView.enabled to true, then restart the console.';
41
42
  export declare const GRAPH_DISABLED_ENVELOPE: GraphDisabledEnvelope;
42
- /** SSE event type for the graph channel, multiplexed over `/events`. */
43
+ /** SSE event type for the legacy graph channel, multiplexed over `/events`. */
43
44
  export declare const GRAPH_SSE_EVENT: "graph";
45
+ /**
46
+ * SSE event type for lifecycle head-advance invalidation hints.
47
+ * Format: `event: graph-append\nid: <runID>:<head>\ndata: {...}\n\n`
48
+ */
49
+ export declare const GRAPH_APPEND_SSE_EVENT: "graph-append";
44
50
  /** Graph-channel SSE frame for an already serialized JSON payload. */
45
51
  export declare function graphSseMessage(json: string): string;
52
+ /**
53
+ * Lifecycle head-advance SSE frame.
54
+ * The `id` field enables the `Last-Event-ID` reconnect mechanism.
55
+ */
56
+ export declare function graphAppendSseMessage(runID: string, head: number): string;
46
57
  /**
47
58
  * Enruta `GET /api/graph`. Devuelve `true` si atendió (y respondió) la petición,
48
59
  * `false` para que el servidor siga con sus rutas. Método ≠ GET → 405; sin token
@@ -50,4 +61,31 @@ export declare function graphSseMessage(json: string): string;
50
61
  * (o `null` si no hay run activo).
51
62
  */
52
63
  export declare function handleGraphRoute(request: IncomingMessage, response: ServerResponse, url: URL, deps: GraphRouteDeps): Promise<boolean>;
64
+ /**
65
+ * Dependencies for the lifecycle history endpoint.
66
+ * When present in server deps, `handleLifecycleHistoryRoute` supersedes
67
+ * `handleGraphRoute` for `GET /api/graph` requests, returning
68
+ * `LifecycleHistoryResponseV1` instead of `GraphViewProjectionV1`.
69
+ */
70
+ export type LifecycleHistoryRouteDeps = {
71
+ reader: LifecycleHistoryReader;
72
+ /** Remote-exposure token (same parity as `/api/state`). */
73
+ remoteToken?: string;
74
+ };
75
+ /** HTTP status codes for lifecycle history error codes per ADR. */
76
+ export declare const LIFECYCLE_HTTP_STATUS: Readonly<Record<string, number>>;
77
+ /** Shared URL boundary for API and the first server-rendered prefix. */
78
+ export declare function readLifecycleHistoryQuery(reader: LifecycleHistoryReader, params: URLSearchParams): Promise<LifecycleHistoryResponseV1>;
79
+ /**
80
+ * Handles `GET /api/graph?run=<runID>&cursor=<n>` for the lifecycle history
81
+ * endpoint. Returns `true` when the request was handled, `false` to fall
82
+ * through to the next handler.
83
+ *
84
+ * Implements ADR endpoint semantics:
85
+ * - Missing `run` → select newest run by lifecycle `updatedAt` / `runID`.
86
+ * - Missing `cursor` → follow live (current head).
87
+ * - Explicit `cursor` → paused historical prefix.
88
+ * - Returns `LifecycleHistoryResponseV1` (replaces old `GraphViewProjectionV1`).
89
+ */
90
+ export declare function handleLifecycleHistoryRoute(request: IncomingMessage, response: ServerResponse, url: URL, deps: LifecycleHistoryRouteDeps): Promise<boolean>;
53
91
  //# sourceMappingURL=graphRoute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graphRoute.d.ts","sourceRoot":"","sources":["../../src/web/graphRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IACtD;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,EACrC,2JAAoK,CAAC;AAEvK,eAAO,MAAM,uBAAuB,EAAE,qBAIrC,CAAC;AAIF,wEAAwE;AACxE,eAAO,MAAM,eAAe,EAAG,OAAgB,CAAC;AAEhD,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAoBD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,OAAO,CAAC,CAsBlB"}
1
+ {"version":3,"file":"graphRoute.d.ts","sourceRoot":"","sources":["../../src/web/graphRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IACtD;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,EACrC,2JAAoK,CAAC;AAEvK,eAAO,MAAM,uBAAuB,EAAE,qBAIrC,CAAC;AAIF,+EAA+E;AAC/E,eAAO,MAAM,eAAe,EAAG,OAAgB,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAG,cAAuB,CAAC;AAE9D,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGzE;AAoBD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,OAAO,CAAC,CAsBlB;AAMD;;;;;GAKG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,mEAAmE;AACnE,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOlE,CAAC;AAaF,wEAAwE;AACxE,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,sBAAsB,EAC9B,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,0BAA0B,CAAC,CAmBrC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAgClB"}
@@ -3,6 +3,7 @@ import type { ConsoleConfig, GraphMode } from "../config/schema";
3
3
  import type { ConsoleClient } from "../console/opencodeClient";
4
4
  import type { PtyClient } from "../console/pty";
5
5
  import type { ConsoleInputs } from "../console/state";
6
+ import type { LifecycleHistoryReader } from "../lifecycle/contracts";
6
7
  import type { GraphViewProjectionV1 } from "../telemetry/graphView";
7
8
  import { type ConfigRouteDeps } from "./configRoute";
8
9
  import { type StorageRouteDeps } from "./storageRoute";
@@ -74,12 +75,30 @@ export type ConsoleServerDeps = {
74
75
  * `graphApi`. Absent/`false` means the tree is not marked disabled.
75
76
  */
76
77
  graphDisabled?: boolean;
78
+ /**
79
+ * Lifecycle history reader for the new `GET /api/graph?run=&cursor=` endpoint
80
+ * and `event: graph-append` SSE invalidation hints. When provided, the
81
+ * lifecycle history route supersedes the legacy `graphApi` route so that
82
+ * `GET /api/graph` returns `LifecycleHistoryResponseV1` instead of a raw
83
+ * `GraphViewProjectionV1`. The legacy `graphApi` can remain for other
84
+ * consumers; both coexist in `ConsoleServerDeps`.
85
+ */
86
+ lifecycleHistoryApi?: {
87
+ reader: LifecycleHistoryReader;
88
+ };
77
89
  };
78
90
  export type ConsoleServer = {
79
91
  url: string;
80
92
  port: number;
81
93
  /** Reevalúa el estado y lo empuja a los clientes SSE conectados. */
82
94
  notify: () => Promise<void>;
95
+ /**
96
+ * Pushes a `graph-append` SSE invalidation hint to connected browsers.
97
+ * Called by the lifecycle filesystem watcher when a durable head advance is
98
+ * observed. The browser ignores stale/duplicate notices and always fetches
99
+ * the full prefix from the endpoint.
100
+ */
101
+ notifyLifecycleAppend: (runID: string, head: number) => void;
83
102
  close: () => void;
84
103
  };
85
104
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,gBAAgB,EAIjC,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,KAAK,eAAe,EAAqB,MAAM,eAAe,CAAC;AAQxE,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAW3E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,iEAAiE;IACjE,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3C,MAAM,EAAE,aAAa,CAAC;IACtB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,aAAa,CAAC;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,gBAAgB,CAAC;IACvC,sCAAsC;IACtC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,8EAA8E;IAC9E,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,OAAO,CAAC;QACzB;;;;;WAKG;QACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,+DAA+D;QAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;QAClD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;KACnD,CAAC;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;KACvD,CAAC;IACF,oFAAoF;IACpF,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AA0GF;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,aAAa,CAAC,CAuNxB"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,gBAAgB,EAIjC,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,KAAK,eAAe,EAAqB,MAAM,eAAe,CAAC;AAYxE,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAW3E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,iEAAiE;IACjE,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3C,MAAM,EAAE,aAAa,CAAC;IACtB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,aAAa,CAAC;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,gBAAgB,CAAC;IACvC,sCAAsC;IACtC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,8EAA8E;IAC9E,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,OAAO,CAAC;QACzB;;;;;WAKG;QACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,+DAA+D;QAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;QAClD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;KACnD,CAAC;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;KACvD,CAAC;IACF,oFAAoF;IACpF,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE;QACpB,MAAM,EAAE,sBAAsB,CAAC;KAChC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B;;;;;OAKG;IACH,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAmIF;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,aAAa,CAAC,CA6PxB"}
@@ -4,6 +4,7 @@ import type { ConsoleConfig, GraphMode } from "../config/schema";
4
4
  import type { ConsoleClient } from "../console/opencodeClient";
5
5
  import type { PtyClient } from "../console/pty";
6
6
  import type { CommitView } from "../console/types";
7
+ import type { LifecycleHistoryReader } from "../lifecycle/contracts";
7
8
  import type { StorageProvider } from "../storage/provider";
8
9
  import type { GraphViewProjectionV1 } from "../telemetry/graphView";
9
10
  import type { StorageRouteDeps } from "./storageRoute";
@@ -61,6 +62,16 @@ export type ConsoleRuntimeDeps = {
61
62
  };
62
63
  /** Effective graph mode resolved by the CLI/plugin composition root. */
63
64
  graphMode?: GraphMode;
65
+ /**
66
+ * Lifecycle history reader for `GET /api/graph?run=&cursor=` and SSE
67
+ * `graph-append` events. When provided, takes priority over `graphView` for
68
+ * the `/api/graph` route. Optional and injectable for testing.
69
+ */
70
+ lifecycleHistoryApi?: {
71
+ reader: LifecycleHistoryReader;
72
+ /** Lifecycle run root to watch for head advances. Absent = no file watcher. */
73
+ lifecycleRoot?: string;
74
+ };
64
75
  /** Inyectables para tests. */
65
76
  serve?: typeof import("./server").createConsoleServer;
66
77
  watch?: (path: string, listener: () => void) => ReturnType<typeof fsWatch>;
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/web/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/web/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAIpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,aAAa,CAAC;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,eAAe,EAAE,eAAe,CAAC;IACpD;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qEAAqE;IACrE,OAAO,EAAE,eAAe,CAAC;IACzB,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACtD,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IACtD,OAAO,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,sEAAsE;IACtE,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,OAAO,CAAC;QACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;QAClD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;KACnD,CAAC;IACF,oEAAoE;IACpE,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;OAIG;IACH,SAAS,CAAC,EAAE;QACV,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;KACvD,CAAC;IACF,wEAAwE;IACxE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE;QACpB,MAAM,EAAE,sBAAsB,CAAC;QAC/B,+EAA+E;QAC/E,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,8BAA8B;IAC9B,KAAK,CAAC,EAAE,cAAc,UAAU,EAAE,mBAAmB,CAAC;IACtD,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;IAC3E,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,cAAc,CAAC,CAEzB"}
@@ -1,6 +1,5 @@
1
- import type { FSWatcher } from "node:fs";
2
1
  /** Firma mínima de `fs.watch` que necesitamos (inyectable en tests). */
3
- export type WatchFn = (path: string, listener: () => void) => FSWatcher;
2
+ export type WatchFn = (path: string, listener: () => void) => import("node:fs").FSWatcher;
4
3
  export type WatchDeps = {
5
4
  watch: WatchFn;
6
5
  /** Programa un callback tras `ms`; por defecto `setTimeout`. */
@@ -16,4 +15,20 @@ export type FileWatcher = {
16
15
  * (`fs.watch`) se inyecta para poder testear el debounce sin tocar disco.
17
16
  */
18
17
  export declare function watchSources(paths: readonly string[], onChange: () => void, deps: WatchDeps, debounceMs?: number): FileWatcher;
18
+ /**
19
+ * Reads the confirmed, digest-checked event count. An unfinished final frame
20
+ * is not committed; unreadable or corrupt confirmed frames return `null`.
21
+ */
22
+ export declare function readLifecycleHead(eventsFile: string): number | null;
23
+ /**
24
+ * Watches the lifecycle root directory for new run subdirectories and their
25
+ * `events.ndjson` files. Fires `onHeadAdvance(runID, head)` only when a
26
+ * confirmed head advance is observed.
27
+ *
28
+ * - Tolerates a missing root at startup; re-watches when the root appears.
29
+ * - A single cancellable reconciliation timer discovers missing roots/files and
30
+ * catches coalesced filesystem notifications independently of browser polling.
31
+ * - Does not modify the journal; this is observation only.
32
+ */
33
+ export declare function watchLifecycleRoot(root: string, onHeadAdvance: (runID: string, head: number) => void, deps: WatchDeps, debounceMs?: number): FileWatcher;
19
34
  //# sourceMappingURL=watch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../src/web/watch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,wEAAwE;AACxE,MAAM,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC;AAExE,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,QAAQ,EAAE,MAAM,IAAI,EACpB,IAAI,EAAE,SAAS,EACf,UAAU,SAAM,GACf,WAAW,CAqCb"}
1
+ {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../src/web/watch.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,MAAM,MAAM,OAAO,GAAG,CACpB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,IAAI,KACjB,OAAO,SAAS,EAAE,SAAS,CAAC;AAEjC,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,QAAQ,EAAE,MAAM,IAAI,EACpB,IAAI,EAAE,SAAS,EACf,UAAU,SAAM,GACf,WAAW,CAqCb;AAMD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,EACpD,IAAI,EAAE,SAAS,EACf,UAAU,SAAM,GACf,WAAW,CAkIb"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jmanuelcorral/openteam",
3
- "version": "0.19.0",
3
+ "version": "0.20.0",
4
4
  "packageManager": "bun@1.3.14",
5
5
  "description": "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
6
6
  "license": "MIT",