@jmanuelcorral/openteam 0.19.0 → 0.21.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 (95) 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 +17 -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 +6862 -798
  14. package/dist/config/errors.d.ts.map +1 -1
  15. package/dist/config/historyEndpoint.d.ts +3 -0
  16. package/dist/config/historyEndpoint.d.ts.map +1 -0
  17. package/dist/config/schema.d.ts +43 -1
  18. package/dist/config/schema.d.ts.map +1 -1
  19. package/dist/console/assets.d.ts +23 -2
  20. package/dist/console/assets.d.ts.map +1 -1
  21. package/dist/console/conversation.d.ts +75 -0
  22. package/dist/console/conversation.d.ts.map +1 -0
  23. package/dist/console/historyBoundary.d.ts +6 -0
  24. package/dist/console/historyBoundary.d.ts.map +1 -0
  25. package/dist/console/inspector.d.ts +3 -0
  26. package/dist/console/inspector.d.ts.map +1 -0
  27. package/dist/console/labels.d.ts +12 -0
  28. package/dist/console/labels.d.ts.map +1 -0
  29. package/dist/console/opencodeClient.d.ts.map +1 -1
  30. package/dist/console/refresh.d.ts +3 -0
  31. package/dist/console/refresh.d.ts.map +1 -0
  32. package/dist/console/render.d.ts +19 -0
  33. package/dist/console/render.d.ts.map +1 -1
  34. package/dist/console/rootAssociation.d.ts +7 -0
  35. package/dist/console/rootAssociation.d.ts.map +1 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +2935 -265
  38. package/dist/lifecycle/contracts.d.ts +618 -0
  39. package/dist/lifecycle/contracts.d.ts.map +1 -0
  40. package/dist/lifecycle/historyReader.d.ts +11 -0
  41. package/dist/lifecycle/historyReader.d.ts.map +1 -0
  42. package/dist/lifecycle/historySourceError.d.ts +7 -0
  43. package/dist/lifecycle/historySourceError.d.ts.map +1 -0
  44. package/dist/lifecycle/project.d.ts +3 -0
  45. package/dist/lifecycle/project.d.ts.map +1 -0
  46. package/dist/lifecycle/root.d.ts +3 -0
  47. package/dist/lifecycle/root.d.ts.map +1 -0
  48. package/dist/lifecycle/runtimeRecorder.d.ts +6 -0
  49. package/dist/lifecycle/runtimeRecorder.d.ts.map +1 -0
  50. package/dist/lifecycle/schema.d.ts +487 -0
  51. package/dist/lifecycle/schema.d.ts.map +1 -0
  52. package/dist/messages/consoleDetail.d.ts +54 -0
  53. package/dist/messages/consoleDetail.d.ts.map +1 -0
  54. package/dist/messages/index.d.ts +1 -0
  55. package/dist/messages/index.d.ts.map +1 -1
  56. package/dist/messages/lifecycle.d.ts +95 -0
  57. package/dist/messages/lifecycle.d.ts.map +1 -0
  58. package/dist/messages/lifecycleRuntime.d.ts +4 -0
  59. package/dist/messages/lifecycleRuntime.d.ts.map +1 -0
  60. package/dist/messages/lifecycleStorage.d.ts +4 -0
  61. package/dist/messages/lifecycleStorage.d.ts.map +1 -0
  62. package/dist/messages/orchestration.d.ts +3 -0
  63. package/dist/messages/orchestration.d.ts.map +1 -1
  64. package/dist/orchestrator/coordinator.d.ts +11 -1
  65. package/dist/orchestrator/coordinator.d.ts.map +1 -1
  66. package/dist/orchestrator/graphIngress.d.ts +5 -0
  67. package/dist/orchestrator/graphIngress.d.ts.map +1 -1
  68. package/dist/orchestrator/graphRuntime.d.ts +13 -1
  69. package/dist/orchestrator/graphRuntime.d.ts.map +1 -1
  70. package/dist/orchestrator/subsessions.d.ts +3 -0
  71. package/dist/orchestrator/subsessions.d.ts.map +1 -1
  72. package/dist/plugin/orchestrateTool.d.ts +3 -0
  73. package/dist/plugin/orchestrateTool.d.ts.map +1 -1
  74. package/dist/storage/lifecycle/codec.d.ts +19 -0
  75. package/dist/storage/lifecycle/codec.d.ts.map +1 -0
  76. package/dist/storage/lifecycle/fsLifecycleJournal.d.ts +3 -0
  77. package/dist/storage/lifecycle/fsLifecycleJournal.d.ts.map +1 -0
  78. package/dist/storage/lifecycle/fsLifecycleSupport.d.ts +17 -0
  79. package/dist/storage/lifecycle/fsLifecycleSupport.d.ts.map +1 -0
  80. package/dist/storage/lifecycle/fsLifecycleWriterLivenessProbe.d.ts +3 -0
  81. package/dist/storage/lifecycle/fsLifecycleWriterLivenessProbe.d.ts.map +1 -0
  82. package/dist/web/configApi.d.ts +1 -1
  83. package/dist/web/configApi.d.ts.map +1 -1
  84. package/dist/web/console.d.ts.map +1 -1
  85. package/dist/web/conversationRoute.d.ts +16 -0
  86. package/dist/web/conversationRoute.d.ts.map +1 -0
  87. package/dist/web/graphRoute.d.ts +39 -1
  88. package/dist/web/graphRoute.d.ts.map +1 -1
  89. package/dist/web/server.d.ts +24 -0
  90. package/dist/web/server.d.ts.map +1 -1
  91. package/dist/web/start.d.ts +17 -0
  92. package/dist/web/start.d.ts.map +1 -1
  93. package/dist/web/watch.d.ts +17 -2
  94. package/dist/web/watch.d.ts.map +1 -1
  95. package/package.json +1 -1
package/README.es.md CHANGED
@@ -49,6 +49,9 @@ estrecha un agente a `local` bajo el modo global `mixed`.
49
49
  - Pines exactos o `"auto"` por agente, fallbacks ordenados opcionales y relevo acotado de modelo para nodos incompletos.
50
50
  - Orquestación multiagente con subsesiones SDK y modelo explícito en `client.session.prompt({ body: { model } })`.
51
51
  - Refresh de disponibilidad local al arrancar y en eventos `session.created` / `session.idle`.
52
+ - Una [línea de tiempo de agentes](docs/es/guide/agent-timeline.md) solo de
53
+ metadatos, con historial duradero del coordinador y los intentos, cursor
54
+ histórico y avisos de actualización en vivo.
52
55
 
53
56
  ## Requisitos
54
57
 
@@ -687,7 +690,12 @@ Puedes ajustar host/puerto y la terminal en `.opencode/openteam.json` (bloque
687
690
  }
688
691
  ```
689
692
 
690
- **Vista del grafo de agentes en vivo.** La Console también puede renderizar un **grafo de agentes** en vivo de una ejecución de Graph; está **activada por defecto en modo shadow** y se puede ocultar con `console.graphView.enabled: false` — consulta [Graph observability web](docs/es/guide/graph-observability-web.md) para la configuración y los requisitos completos.
693
+ **Árbol de agentes y línea de tiempo.**
694
+ `console.graphView.enabled` vale `true` por defecto. El historial nativo del
695
+ ciclo de vida se compone con independencia de la autoridad de ejecución de
696
+ Graph; el DAG separado de Graph sigue el `graph.mode` efectivo. Consulta
697
+ [Línea de tiempo de agentes](docs/es/guide/agent-timeline.md) y
698
+ [Web de observabilidad del grafo](docs/es/guide/graph-observability-web.md).
691
699
 
692
700
  > **Seguridad**: el servidor escucha **solo en loopback** (`127.0.0.1`/`localhost`, validado por Zod) y **nunca expone prompts** (solo `promptHash`), args de toolcall ni contenido de mensajes: solo contadores, costes y resúmenes redactados. La vista "Sesión"/"Terminal" exige el token efímero. Si el puerto está ocupado y `autoPortFallback` es `true`, prueba el siguiente libre. El acceso remoto mediante `openteam tunnel` se **eliminó del MVP** (2026-08-31) y se redefinirá más adelante; la Console no tiene camino de exposición remota integrado.
693
701
 
@@ -906,7 +914,7 @@ Consulta [docs/compatibility.md](docs/compatibility.md). Resumen verificado el `
906
914
 
907
915
  | Superficie | Versión / contrato |
908
916
  | --- | --- |
909
- | openteam | `0.19.0`; versión actual del paquete |
917
+ | openteam | `0.21.0`; versión actual del paquete |
910
918
  | `@opencode-ai/plugin` | `1.18.19` |
911
919
  | `@opencode-ai/sdk` | `1.18.19` |
912
920
  | Hook de routing | `chat.message`; no `chat.params` para cambiar modelo |
package/README.md CHANGED
@@ -55,6 +55,9 @@ or narrow an agent to `local` under global `mixed`, when frontier is prohibited.
55
55
  - Per-agent exact pins or `"auto"`, optional ordered fallbacks, and bounded cross-model handoff for an incomplete node.
56
56
  - Multi-agent orchestration with SDK child sessions and an explicit model in `client.session.prompt({ body: { model } })`.
57
57
  - Local availability refresh at startup and on `session.created` / `session.idle` events.
58
+ - A metadata-only [agent timeline](docs/guide/agent-timeline.md) with durable
59
+ coordinator/attempt history, historical cursor inspection, and live
60
+ invalidation hints.
58
61
  - A local web **Console** aggregating every opencode session (cost, tokens, tool calls, routing, decisions) — redacted, loopback-only.
59
62
  - A read-only **MCP server** exposing aggregated team memory, plus opt-in semantic recall.
60
63
 
@@ -680,7 +683,11 @@ block):
680
683
  }
681
684
  ```
682
685
 
683
- **Live agent-graph view.** The Console can also render a live **agent graph** of a Graph run; it is **on by default in shadow mode** and can be hidden with `console.graphView.enabled: false` — see [Graph observability web](docs/guide/graph-observability-web.md) for setup and the full requirements.
686
+ **Agent tree and timeline.** `console.graphView.enabled` defaults to `true`.
687
+ Native lifecycle history is composed independently of Graph execution
688
+ authority; the separate Graph DAG follows the effective `graph.mode`. See
689
+ [Agent timeline](docs/guide/agent-timeline.md) and
690
+ [Graph observability web](docs/guide/graph-observability-web.md).
684
691
 
685
692
  > **Security**: the server listens **on loopback only** (`127.0.0.1`/`localhost`, Zod-validated) and **never exposes prompts** (only `promptHash`), tool-call args or message content — only counters, costs and redacted summaries. The "Session"/"Terminal" view requires the ephemeral token. If the port is busy and `autoPortFallback` is `true`, it tries the next free one. Remote access via `openteam tunnel` was **removed from the MVP** (2026-08-31) and will be redefined later; the Console has no built-in remote-exposure path.
686
693
 
@@ -867,7 +874,7 @@ See [docs/compatibility.md](docs/compatibility.md). Verified summary as of `2026
867
874
 
868
875
  | Surface | Version / contract |
869
876
  | --- | --- |
870
- | openteam | `0.19.0`; current package version |
877
+ | openteam | `0.21.0`; current package version |
871
878
  | `@opencode-ai/plugin` | `1.18.19` |
872
879
  | `@opencode-ai/sdk` | `1.18.19` |
873
880
  | Routing hook | `chat.message`; not `chat.params` for model changes |
@@ -34,12 +34,12 @@
34
34
  "idempotent": true
35
35
  },
36
36
  "performance": {
37
- "p95Millis": 0.48958399999997937,
37
+ "p95Millis": 0.48455300000000534,
38
38
  "budgetMillis": 50,
39
39
  "samples": 100
40
40
  }
41
41
  },
42
42
  "verdict": "pass",
43
43
  "failedGates": [],
44
- "digest": "606b1947447359837a63d61f9c68b44e056d1c3435c8371c723c2a66e743f7e4"
44
+ "digest": "290230c6b0b6bdee44f0d1bd8f9250888a14fef9fae81e79068062f840cf42b9"
45
45
  }
@@ -20,7 +20,7 @@
20
20
  "rawFindings": 0
21
21
  },
22
22
  "overhead": {
23
- "p95Millis": 0.3649609999999939,
23
+ "p95Millis": 0.36459800000000087,
24
24
  "budgetMillis": 25,
25
25
  "samples": 1000
26
26
  },
@@ -35,5 +35,5 @@
35
35
  },
36
36
  "verdict": "pass",
37
37
  "failedGates": [],
38
- "digest": "c7094246a8b333c8e9bf65edc1814701bd3d2425cf290f94ab5d58023f463176"
38
+ "digest": "0a84cef4d09066691079df356416e432b064324a9d974e78fb5aef4274b15f9d"
39
39
  }
@@ -3,6 +3,7 @@ import type { OpenTeamConfig } from "../config/schema";
3
3
  import { type ConsoleClient } from "../console/opencodeClient";
4
4
  import { type PtyClient } from "../console/pty";
5
5
  import type { CommitView } from "../console/types";
6
+ import type { LifecycleHistoryReader } from "../lifecycle/contracts";
6
7
  import { type BuildSqliteIndexResult } from "../storage/index/bunSqlite";
7
8
  import type { StorageProvider } from "../storage/provider";
8
9
  import type { ConsoleRuntime, ConsoleRuntimeDeps } from "../web/start";
@@ -11,6 +12,7 @@ import { type GraphViewProviderDeps } from "./graphViewProvider";
11
12
  export type ConsoleServeDeps = {
12
13
  loadConfig: (path: string) => Promise<OpenTeamConfig>;
13
14
  configPath: string;
15
+ directory?: string;
14
16
  /** Directorio de logs de sesión (`sessions/*.jsonl`). */
15
17
  sessionsDir: string;
16
18
  decisionsPath: string;
@@ -54,6 +56,21 @@ export type ConsoleServeDeps = {
54
56
  createGraphViewProvider?: (deps: GraphViewProviderDeps) => {
55
57
  readView: () => Promise<import("../telemetry/graphView").GraphViewProjectionV1 | null>;
56
58
  };
59
+ /**
60
+ * Lifecycle history reader for `GET /api/graph?run=&cursor=` and SSE
61
+ * `graph-append` events. Injectable for tests; when provided it supersedes
62
+ * the legacy graph-view route. When undefined (default), the legacy
63
+ * graph-view route is used. In production, this is created by
64
+ * `createLifecycleHistoryProvider` once Yen's storage layer lands.
65
+ */
66
+ lifecycleHistoryReader?: LifecycleHistoryReader;
67
+ /**
68
+ * Filesystem root for lifecycle run directories. Required for the
69
+ * filesystem watcher that emits SSE `graph-append` on head advances.
70
+ * Defaults to the lifecycle root from config when `lifecycleHistoryReader`
71
+ * is provided.
72
+ */
73
+ lifecycleRoot?: string;
57
74
  };
58
75
  export type ConsoleServeOptions = {
59
76
  open: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"consoleServe.d.ts","sourceRoot":"","sources":["../../src/cli/consoleServe.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvE,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAE7B,gEAAgE;AAChE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,+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,oEAAoE;IACpE,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,yDAAyD;IACzD,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;IAC1D,oDAAoD;IACpD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;IAClD,yDAAyD;IACzD,YAAY,CAAC,EAAE,CACb,IAAI,EAAE,kBAAkB,KACrB,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC9C,sEAAsE;IACtE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;QAAE,OAAO,EAAE,eAAe,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,KAC7D,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK;QACzD,QAAQ,EAAE,MAAM,OAAO,CACrB,OAAO,wBAAwB,EAAE,qBAAqB,GAAG,IAAI,CAC9D,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC;IACd;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAgBb,CAAC;AAEb;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf,CAMA;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAErE;AAED,MAAM,MAAM,kBAAkB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAwK7B"}
1
+ {"version":3,"file":"consoleServe.d.ts","sourceRoot":"","sources":["../../src/cli/consoleServe.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvE,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAE7B,gEAAgE;AAChE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,+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,oEAAoE;IACpE,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,yDAAyD;IACzD,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;IAC1D,oDAAoD;IACpD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;IAClD,yDAAyD;IACzD,YAAY,CAAC,EAAE,CACb,IAAI,EAAE,kBAAkB,KACrB,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC9C,sEAAsE;IACtE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;QAAE,OAAO,EAAE,eAAe,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,KAC7D,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK;QACzD,QAAQ,EAAE,MAAM,OAAO,CACrB,OAAO,wBAAwB,EAAE,qBAAqB,GAAG,IAAI,CAC9D,CAAC;KACH,CAAC;IACF;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC;IACd;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAgBb,CAAC;AAEb;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf,CAMA;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAErE;AAED,MAAM,MAAM,kBAAkB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CA8L7B"}
@@ -1,11 +1,13 @@
1
1
  import type { CutoverGateEvaluation, GraphOperatorDeps } from "../commands/dispatch";
2
2
  import { type OpenTeamConfig } from "../config/schema";
3
3
  import type { NodeExecutor } from "../graph/langgraph/types";
4
+ import type { LifecycleRunSource, RuntimeLifecycleRecorder } from "../lifecycle/contracts";
4
5
  import type { ExecLike } from "../local/foundry-local";
5
6
  import type { StorageProvider } from "../storage/provider";
6
- type GraphOperatorFactoryOptions = {
7
+ type GraphOperatorBaseOptions = {
7
8
  readonly storage: StorageProvider;
8
9
  readonly holder: string;
10
+ readonly lifecycleSource: LifecycleRunSource;
9
11
  readonly exec?: ExecLike;
10
12
  readonly repoRoot?: string;
11
13
  readonly worktreesDir?: string;
@@ -17,6 +19,13 @@ type GraphOperatorFactoryOptions = {
17
19
  */
18
20
  readonly nodeExecutor?: NodeExecutor;
19
21
  };
22
+ export type GraphOperatorFactoryOptions = GraphOperatorBaseOptions & ({
23
+ readonly lifecycleRecorder: RuntimeLifecycleRecorder;
24
+ readonly createLifecycleRecorder?: never;
25
+ } | {
26
+ readonly lifecycleRecorder?: never;
27
+ readonly createLifecycleRecorder: (config: OpenTeamConfig) => RuntimeLifecycleRecorder;
28
+ });
20
29
  export declare function createGraphOperator(options: GraphOperatorFactoryOptions): GraphOperatorDeps;
21
30
  export {};
22
31
  //# sourceMappingURL=graphOperator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graphOperator.d.ts","sourceRoot":"","sources":["../../src/cli/graphOperator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAqBvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAY3D,KAAK,2BAA2B,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAC7B,MAAM,EAAE,cAAc,KACnB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC,CAAC;AAwIF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,2BAA2B,GACnC,iBAAiB,CAyDnB"}
1
+ {"version":3,"file":"graphOperator.d.ts","sourceRoot":"","sources":["../../src/cli/graphOperator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAqBvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAY3D,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC;IAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAC7B,MAAM,EAAE,cAAc,KACnB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,GAChE,CACI;IACE,QAAQ,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;IACrD,QAAQ,CAAC,uBAAuB,CAAC,EAAE,KAAK,CAAC;CAC1C,GACD;IACE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACnC,QAAQ,CAAC,uBAAuB,EAAE,CAChC,MAAM,EAAE,cAAc,KACnB,wBAAwB,CAAC;CAC/B,CACJ,CAAC;AAwIJ,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,2BAA2B,GACnC,iBAAiB,CA4FnB"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Production filesystem composition for the lifecycle history reader.
3
+ *
4
+ * Wires together:
5
+ * - `createFsLifecycleJournal` for durable NDJSON read access
6
+ * - `createFsLifecycleWriterLivenessProbe` for ownership observation
7
+ * - `projectLifecyclePrefix` for pure prefix projection
8
+ * - Legacy graph journal adapter for pre-lifecycle artifacts
9
+ *
10
+ * Ownership: Livingston (per ADR runtime-lifecycle-history.md)
11
+ */
12
+ import { type Dirent, type Stats } from "node:fs";
13
+ import type { LifecycleHistoryProviderFactoryOptions, LifecycleHistoryReader } from "../lifecycle/contracts";
14
+ type LegacyGraphReadFs = {
15
+ readdir: (path: string) => readonly Pick<Dirent, "name" | "isDirectory">[];
16
+ stat: (path: string) => Pick<Stats, "mtimeMs">;
17
+ read: (path: string) => string;
18
+ };
19
+ export declare const createLifecycleHistoryProvider: (options: LifecycleHistoryProviderFactoryOptions, legacyFs?: LegacyGraphReadFs) => LifecycleHistoryReader;
20
+ export {};
21
+ //# sourceMappingURL=lifecycleHistoryProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycleHistoryProvider.d.ts","sourceRoot":"","sources":["../../src/cli/lifecycleHistoryProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,MAAM,EAGX,KAAK,KAAK,EAEX,MAAM,SAAS,CAAC;AAKjB,OAAO,KAAK,EAGV,sCAAsC,EACtC,sBAAsB,EAIvB,MAAM,wBAAwB,CAAC;AAiBhC,KAAK,iBAAiB,GAAG;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC;IAC3E,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/C,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAChC,CAAC;AAiLF,eAAO,MAAM,8BAA8B,YAChC,sCAAsC,aACrC,iBAAiB,KAC1B,sBAyBwC,CAAC"}
package/dist/cli.d.ts CHANGED
@@ -1,2 +1,4 @@
1
- export {};
1
+ import { type OpenTeamConfig } from "./config/schema";
2
+ import type { RuntimeLifecycleRecorder } from "./lifecycle/contracts";
3
+ export declare function createCliLifecycleRecorder(config: OpenTeamConfig): RuntimeLifecycleRecorder;
2
4
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AA4DA,OAAO,EAML,KAAK,cAAc,EAEpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AA6DtE,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,cAAc,GACrB,wBAAwB,CA8B1B"}