@openrig/cli 0.3.2 → 0.3.3-rc.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.
- package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +8 -8
- package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
- package/daemon/dist/adapters/cmux-transport.js +51 -9
- package/daemon/dist/adapters/cmux-transport.js.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +32 -4
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/tmux.d.ts +32 -1
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +75 -2
- package/daemon/dist/adapters/tmux.js.map +1 -1
- package/daemon/dist/db/migrations/042_rig_archive.d.ts +16 -0
- package/daemon/dist/db/migrations/042_rig_archive.d.ts.map +1 -0
- package/daemon/dist/db/migrations/042_rig_archive.js +21 -0
- package/daemon/dist/db/migrations/042_rig_archive.js.map +1 -0
- package/daemon/dist/domain/ps-projection.d.ts +6 -1
- package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.js +10 -1
- package/daemon/dist/domain/ps-projection.js.map +1 -1
- package/daemon/dist/domain/rig-expansion-service.d.ts +1 -1
- package/daemon/dist/domain/rig-expansion-service.d.ts.map +1 -1
- package/daemon/dist/domain/rig-expansion-service.js +12 -10
- package/daemon/dist/domain/rig-expansion-service.js.map +1 -1
- package/daemon/dist/domain/rig-repository.d.ts +28 -2
- package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
- package/daemon/dist/domain/rig-repository.js +40 -3
- package/daemon/dist/domain/rig-repository.js.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts +176 -0
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +305 -37
- package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts +19 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.js +30 -12
- package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
- package/daemon/dist/domain/rigspec-schema.d.ts +1 -0
- package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-schema.js +4 -1
- package/daemon/dist/domain/rigspec-schema.js.map +1 -1
- package/daemon/dist/domain/session-transport.d.ts +15 -0
- package/daemon/dist/domain/session-transport.d.ts.map +1 -1
- package/daemon/dist/domain/session-transport.js +8 -3
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/topology-converge.d.ts +97 -0
- package/daemon/dist/domain/topology-converge.d.ts.map +1 -0
- package/daemon/dist/domain/topology-converge.js +70 -0
- package/daemon/dist/domain/topology-converge.js.map +1 -0
- package/daemon/dist/domain/types.d.ts +6 -0
- package/daemon/dist/domain/types.d.ts.map +1 -1
- package/daemon/dist/domain/types.js.map +1 -1
- package/daemon/dist/domain/whoami-service.d.ts +8 -0
- package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
- package/daemon/dist/domain/whoami-service.js +1 -0
- package/daemon/dist/domain/whoami-service.js.map +1 -1
- package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-runtime.js +9 -1
- package/daemon/dist/domain/workflow-runtime.js.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.d.ts +19 -0
- package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.js +26 -0
- package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
- package/daemon/dist/routes/ps.js +4 -1
- package/daemon/dist/routes/ps.js.map +1 -1
- package/daemon/dist/routes/rigs.d.ts.map +1 -1
- package/daemon/dist/routes/rigs.js +124 -2
- package/daemon/dist/routes/rigs.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +2 -1
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/getting-started.md +69 -0
- package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +78 -9
- package/dist/commands/add.d.ts +4 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +115 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/archive.d.ts +10 -0
- package/dist/commands/archive.d.ts.map +1 -0
- package/dist/commands/archive.js +68 -0
- package/dist/commands/archive.js.map +1 -0
- package/dist/commands/bootstrap.js +2 -2
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/discover.js +2 -2
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/down.d.ts +1 -1
- package/dist/commands/down.d.ts.map +1 -1
- package/dist/commands/down.js +91 -3
- package/dist/commands/down.js.map +1 -1
- package/dist/commands/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +22 -3
- package/dist/commands/ps.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +11 -0
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/setup.d.ts +7 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +28 -1
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +35 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/unarchive.d.ts +10 -0
- package/dist/commands/unarchive.d.ts.map +1 -0
- package/dist/commands/unarchive.js +53 -0
- package/dist/commands/unarchive.js.map +1 -0
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +50 -0
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +4 -1
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +2 -3
- package/dist/commands/workflow.js.map +1 -1
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +2 -3
- package/dist/commands/workspace.js.map +1 -1
- package/dist/daemon-lifecycle.d.ts +23 -0
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +24 -0
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +29 -0
- package/dist/mcp-server.js.map +1 -1
- package/dist/release-surface/affected-skills.d.ts +49 -0
- package/dist/release-surface/affected-skills.d.ts.map +1 -0
- package/dist/release-surface/affected-skills.js +153 -0
- package/dist/release-surface/affected-skills.js.map +1 -0
- package/dist/release-surface/extract-surface.d.ts +23 -0
- package/dist/release-surface/extract-surface.d.ts.map +1 -0
- package/dist/release-surface/extract-surface.js +193 -0
- package/dist/release-surface/extract-surface.js.map +1 -0
- package/dist/release-surface/generate.d.ts +2 -0
- package/dist/release-surface/generate.d.ts.map +1 -0
- package/dist/release-surface/generate.js +51 -0
- package/dist/release-surface/generate.js.map +1 -0
- package/dist/release-surface/surface-diff.d.ts +40 -0
- package/dist/release-surface/surface-diff.d.ts.map +1 -0
- package/dist/release-surface/surface-diff.js +212 -0
- package/dist/release-surface/surface-diff.js.map +1 -0
- package/package.json +1 -1
- package/ui/dist/assets/{index-GjTxfi9S.js → index-CrJgCmkX.js} +146 -141
- package/ui/dist/index.html +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"042_rig_archive.js","sourceRoot":"","sources":["../../../src/db/migrations/042_rig_archive.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAc;IACzC,IAAI,EAAE,qBAAqB;IAC3B,GAAG,EAAE;;;GAGJ;CACF,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type Database from "better-sqlite3";
|
|
2
2
|
import type { NodeLifecycleState, RigLifecycleState } from "./types.js";
|
|
3
|
+
import { type RigArchiveFilter } from "./rig-repository.js";
|
|
3
4
|
import type { SeatActivityService } from "./seat-activity-service.js";
|
|
4
5
|
export interface PsEntry {
|
|
5
6
|
rigId: string;
|
|
@@ -36,6 +37,10 @@ export interface PsEntry {
|
|
|
36
37
|
lifecycleState: RigLifecycleState;
|
|
37
38
|
uptime: string | null;
|
|
38
39
|
latestSnapshot: string | null;
|
|
40
|
+
/** OPR.0.3.3.19 - ISO timestamp when the rig was archived, or null if active. */
|
|
41
|
+
archivedAt: string | null;
|
|
42
|
+
/** OPR.0.3.3.19 - convenience flag; true iff `archivedAt !== null`. */
|
|
43
|
+
isArchived: boolean;
|
|
39
44
|
}
|
|
40
45
|
/**
|
|
41
46
|
* Folds per-node lifecycle states into a rig-level lifecycle state.
|
|
@@ -65,7 +70,7 @@ export declare class PsProjectionService {
|
|
|
65
70
|
db: Database.Database;
|
|
66
71
|
seatActivity?: SeatActivityService;
|
|
67
72
|
});
|
|
68
|
-
getEntries(): PsEntry[];
|
|
73
|
+
getEntries(filter?: RigArchiveFilter): PsEntry[];
|
|
69
74
|
}
|
|
70
75
|
/**
|
|
71
76
|
* Slice 15 — count of pending qitems assigned to a specific canonical
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps-projection.d.ts","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C;+DAC2D;IAC3D,cAAc,EAAE,iBAAiB,CAAC;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ps-projection.d.ts","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C;+DAC2D;IAC3D,cAAc,EAAE,iBAAiB,CAAC;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iFAAiF;IACjF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,uEAAuE;IACvE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,iBAAiB,CAa3F;AAED;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;gBAE9C,IAAI,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAAC,YAAY,CAAC,EAAE,mBAAmB,CAAA;KAAE;IAK/E,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,EAAE;CAoFjD;AAwBD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE,MAAM,GAAG,MAAM,CAMtG"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getNodeInventory } from "./node-inventory.js";
|
|
2
|
+
import { archiveWhereClause } from "./rig-repository.js";
|
|
2
3
|
/**
|
|
3
4
|
* Folds per-node lifecycle states into a rig-level lifecycle state.
|
|
4
5
|
*
|
|
@@ -41,11 +42,16 @@ export class PsProjectionService {
|
|
|
41
42
|
this.db = deps.db;
|
|
42
43
|
this.seatActivity = deps.seatActivity ?? null;
|
|
43
44
|
}
|
|
44
|
-
getEntries() {
|
|
45
|
+
getEntries(filter) {
|
|
46
|
+
// OPR.0.3.3.19 - default excludes archived rigs at the projection layer
|
|
47
|
+
// (NOT client-side). Explicit includeArchived/archivedOnly opt in.
|
|
48
|
+
const cond = archiveWhereClause("r.archived_at", filter);
|
|
49
|
+
const where = cond ? `WHERE ${cond}` : "";
|
|
45
50
|
const rows = this.db.prepare(`
|
|
46
51
|
SELECT
|
|
47
52
|
r.id as rig_id,
|
|
48
53
|
r.name,
|
|
54
|
+
r.archived_at as archived_at,
|
|
49
55
|
(SELECT COUNT(*) FROM nodes n WHERE n.rig_id = r.id) as node_count,
|
|
50
56
|
(SELECT COUNT(*) FROM nodes n WHERE n.rig_id = r.id AND
|
|
51
57
|
(SELECT status FROM sessions s WHERE s.node_id = n.id ORDER BY s.created_at DESC, s.id DESC LIMIT 1) = 'running'
|
|
@@ -57,6 +63,7 @@ export class PsProjectionService {
|
|
|
57
63
|
) as earliest_running_at,
|
|
58
64
|
(SELECT snap.created_at FROM snapshots snap WHERE snap.rig_id = r.id ORDER BY snap.created_at DESC, snap.id DESC LIMIT 1) as latest_snapshot_at
|
|
59
65
|
FROM rigs r
|
|
66
|
+
${where}
|
|
60
67
|
ORDER BY r.name
|
|
61
68
|
`).all();
|
|
62
69
|
const now = Date.now();
|
|
@@ -102,6 +109,8 @@ export class PsProjectionService {
|
|
|
102
109
|
lifecycleState,
|
|
103
110
|
uptime: r.earliest_running_at ? formatDuration(now - new Date(r.earliest_running_at + "Z").getTime()) : null,
|
|
104
111
|
latestSnapshot: r.latest_snapshot_at ? formatAge(now - new Date(r.latest_snapshot_at + "Z").getTime()) : null,
|
|
112
|
+
archivedAt: r.archived_at,
|
|
113
|
+
isArchived: r.archived_at !== null,
|
|
105
114
|
};
|
|
106
115
|
});
|
|
107
116
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps-projection.js","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ps-projection.js","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ export declare class RigExpansionService {
|
|
|
21
21
|
private deps;
|
|
22
22
|
constructor(deps: RigExpansionServiceDeps);
|
|
23
23
|
expand(request: ExpansionRequest): Promise<ExpansionResult>;
|
|
24
|
-
private
|
|
24
|
+
private buildExpansionSpecObject;
|
|
25
25
|
}
|
|
26
26
|
export {};
|
|
27
27
|
//# sourceMappingURL=rig-expansion-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rig-expansion-service.d.ts","sourceRoot":"","sources":["../../src/domain/rig-expansion-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAwB,MAAM,YAAY,CAAC;AAG1F,UAAU,uBAAuB;IAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,kBAAkB,CAAC;IACpC,eAAe,EAAE,eAAe,CAAC;CAClC;AAED;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,IAAI,CAA0B;gBAE1B,IAAI,EAAE,uBAAuB;IAInC,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"rig-expansion-service.d.ts","sourceRoot":"","sources":["../../src/domain/rig-expansion-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAwB,MAAM,YAAY,CAAC;AAG1F,UAAU,uBAAuB;IAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,kBAAkB,CAAC;IACpC,eAAe,EAAE,eAAe,CAAC;CAClC;AAED;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,IAAI,CAA0B;gBAE1B,IAAI,EAAE,uBAAuB;IAInC,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IAgGjE,OAAO,CAAC,wBAAwB;CAoDjC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RigSpecSchema as PodRigSpecSchema } from "./rigspec-schema.js";
|
|
2
2
|
/**
|
|
3
3
|
* Orchestrates live rig expansion by composing PodRigInstantiator.materialize()
|
|
4
4
|
* for topology persistence and NodeLauncher for launching new nodes.
|
|
@@ -14,11 +14,14 @@ export class RigExpansionService {
|
|
|
14
14
|
if (!rig) {
|
|
15
15
|
return { ok: false, code: "rig_not_found", error: `Rig "${request.rigId}" not found` };
|
|
16
16
|
}
|
|
17
|
-
// 2. Build
|
|
17
|
+
// 2. Build the one-pod spec as a structured OBJECT (OPR.0.3.3.24: no
|
|
18
|
+
// synthetic-spec YAML round-trip). It flows through the materialize
|
|
19
|
+
// structured-front (validate + preflight + persistence core) and the launch
|
|
20
|
+
// core directly.
|
|
18
21
|
const pod = request.pod;
|
|
19
|
-
const
|
|
22
|
+
const specObject = this.buildExpansionSpecObject(rig.rig.name, pod, request.crossPodEdges);
|
|
20
23
|
// 3. Materialize topology (suppress rig.imported event)
|
|
21
|
-
const materializeResult = await this.deps.podInstantiator.
|
|
24
|
+
const materializeResult = await this.deps.podInstantiator.materializeStructured(specObject, request.rigRoot ?? ".", { targetRigId: request.rigId, suppressSummaryEvent: true });
|
|
22
25
|
if (!materializeResult.ok) {
|
|
23
26
|
const code = materializeResult.code;
|
|
24
27
|
const message = "message" in materializeResult
|
|
@@ -37,8 +40,9 @@ export class RigExpansionService {
|
|
|
37
40
|
.find((id) => id !== null);
|
|
38
41
|
const podId = newPod ?? "";
|
|
39
42
|
const podNamespace = pod.id;
|
|
40
|
-
// 5. Launch and fully start the newly created nodes via the
|
|
41
|
-
|
|
43
|
+
// 5. Launch and fully start the newly created nodes via the launch core on
|
|
44
|
+
// the structured spec (no YAML round-trip; normalize is pure).
|
|
45
|
+
const launchOutcome = await this.deps.podInstantiator.launchValidatedSpec(PodRigSpecSchema.normalize(specObject), request.rigRoot ?? ".", request.rigId);
|
|
42
46
|
if (!launchOutcome.ok) {
|
|
43
47
|
const message = "message" in launchOutcome
|
|
44
48
|
? launchOutcome.message
|
|
@@ -81,7 +85,7 @@ export class RigExpansionService {
|
|
|
81
85
|
retryTargets,
|
|
82
86
|
};
|
|
83
87
|
}
|
|
84
|
-
|
|
88
|
+
buildExpansionSpecObject(rigName, pod, crossPodEdges) {
|
|
85
89
|
const syntheticSpec = {
|
|
86
90
|
version: "0.2",
|
|
87
91
|
name: rigName,
|
|
@@ -126,9 +130,7 @@ export class RigExpansionService {
|
|
|
126
130
|
to: edge.to,
|
|
127
131
|
})),
|
|
128
132
|
};
|
|
129
|
-
return
|
|
130
|
-
lineWidth: 0,
|
|
131
|
-
});
|
|
133
|
+
return syntheticSpec;
|
|
132
134
|
}
|
|
133
135
|
}
|
|
134
136
|
//# sourceMappingURL=rig-expansion-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rig-expansion-service.js","sourceRoot":"","sources":["../../src/domain/rig-expansion-service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"rig-expansion-service.js","sourceRoot":"","sources":["../../src/domain/rig-expansion-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,23 @@ import type { Rig, Node, Edge, RigWithRelations, RigServicesRecord, RigServicesR
|
|
|
8
8
|
* post-L1 cold-start. Distinct from `findLatestAutoPreDown`, which filters by kind.
|
|
9
9
|
*/
|
|
10
10
|
export declare function findLatestUsableSnapshot(db: Database.Database, rigId: string): Snapshot | null;
|
|
11
|
+
/**
|
|
12
|
+
* OPR.0.3.3.19 - rig archive read filter. Default daemon reads EXCLUDE archived
|
|
13
|
+
* rigs; explicit modes opt in. Mirrors the stream-items `--include-archived`
|
|
14
|
+
* precedent (stream-store.list).
|
|
15
|
+
*/
|
|
16
|
+
export interface RigArchiveFilter {
|
|
17
|
+
/** include both active and archived rigs */
|
|
18
|
+
includeArchived?: boolean;
|
|
19
|
+
/** return ONLY archived rigs */
|
|
20
|
+
archivedOnly?: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* SQL condition fragment for the archive filter on a column (e.g. "archived_at"
|
|
24
|
+
* or the aliased "r.archived_at"). Returns null when no filter applies
|
|
25
|
+
* (includeArchived = include everything). Default (no filter) excludes archived.
|
|
26
|
+
*/
|
|
27
|
+
export declare function archiveWhereClause(col: string, filter?: RigArchiveFilter): string | null;
|
|
11
28
|
interface NodeOptions {
|
|
12
29
|
role?: string;
|
|
13
30
|
runtime?: string;
|
|
@@ -47,7 +64,7 @@ export declare class RigRepository {
|
|
|
47
64
|
addNode(rigId: string, logicalId: string, opts?: NodeOptions): Node;
|
|
48
65
|
addEdge(rigId: string, sourceId: string, targetId: string, kind: string): Edge;
|
|
49
66
|
getRig(rigId: string): RigWithRelations | null;
|
|
50
|
-
listRigs(): Rig[];
|
|
67
|
+
listRigs(filter?: RigArchiveFilter): Rig[];
|
|
51
68
|
/**
|
|
52
69
|
* Returns the latest snapshot for this rig with at least one non-null resume token,
|
|
53
70
|
* or null if no usable snapshot exists. Used by the lifecycle projection to derive
|
|
@@ -55,14 +72,23 @@ export declare class RigRepository {
|
|
|
55
72
|
*/
|
|
56
73
|
findLatestUsableSnapshot(rigId: string): Snapshot | null;
|
|
57
74
|
findRigsByName(name: string): Rig[];
|
|
58
|
-
getRigSummaries(): Array<{
|
|
75
|
+
getRigSummaries(filter?: RigArchiveFilter): Array<{
|
|
59
76
|
id: string;
|
|
60
77
|
name: string;
|
|
61
78
|
nodeCount: number;
|
|
62
79
|
latestSnapshotAt: string | null;
|
|
63
80
|
latestSnapshotId: string | null;
|
|
64
81
|
hasServices: boolean;
|
|
82
|
+
archivedAt: string | null;
|
|
65
83
|
}>;
|
|
84
|
+
/**
|
|
85
|
+
* OPR.0.3.3.19 - soft-archive a rig: sets `archived_at`. The rigs row,
|
|
86
|
+
* topology rows, and snapshots are all RETAINED (this is NOT the delete
|
|
87
|
+
* path - contrast deleteRig). Returns false if the rig was already archived.
|
|
88
|
+
*/
|
|
89
|
+
archiveRig(rigId: string): boolean;
|
|
90
|
+
/** OPR.0.3.3.19 - reverse archive: clears `archived_at`. Returns false if not archived. */
|
|
91
|
+
unarchiveRig(rigId: string): boolean;
|
|
66
92
|
deleteRig(rigId: string): void;
|
|
67
93
|
deleteNode(nodeId: string): void;
|
|
68
94
|
setServicesRecord(rigId: string, record: RigServicesRecordInput): RigServicesRecord;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rig-repository.d.ts","sourceRoot":"","sources":["../../src/domain/rig-repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,KAAK,EACV,GAAG,EACH,IAAI,EACJ,IAAI,EAGJ,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,QAAQ,EAET,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CA2B9F;AAED,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;gBACnB,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAIjC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;IAW5B;;;;;;;OAOG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,YAAY,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAO1F,6DAA6D;IAC7D,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,YAAY,EAAE,aAAa,GAAG,IAAI;IAYzE;6DACyD;IACzD,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI;IAuEnE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAa9E,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAiC9C,QAAQ,
|
|
1
|
+
{"version":3,"file":"rig-repository.d.ts","sourceRoot":"","sources":["../../src/domain/rig-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,18 @@ export function findLatestUsableSnapshot(db, rigId) {
|
|
|
32
32
|
createdAt: row.created_at,
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* SQL condition fragment for the archive filter on a column (e.g. "archived_at"
|
|
37
|
+
* or the aliased "r.archived_at"). Returns null when no filter applies
|
|
38
|
+
* (includeArchived = include everything). Default (no filter) excludes archived.
|
|
39
|
+
*/
|
|
40
|
+
export function archiveWhereClause(col, filter) {
|
|
41
|
+
if (filter?.archivedOnly)
|
|
42
|
+
return `${col} IS NOT NULL`;
|
|
43
|
+
if (filter?.includeArchived)
|
|
44
|
+
return null;
|
|
45
|
+
return `${col} IS NULL`;
|
|
46
|
+
}
|
|
35
47
|
export class RigRepository {
|
|
36
48
|
db;
|
|
37
49
|
constructor(db) {
|
|
@@ -145,9 +157,11 @@ export class RigRepository {
|
|
|
145
157
|
edges: edgeRows.map((r) => this.rowToEdge(r)),
|
|
146
158
|
};
|
|
147
159
|
}
|
|
148
|
-
listRigs() {
|
|
160
|
+
listRigs(filter) {
|
|
161
|
+
const cond = archiveWhereClause("archived_at", filter);
|
|
162
|
+
const where = cond ? `WHERE ${cond}` : "";
|
|
149
163
|
const rows = this.db
|
|
150
|
-
.prepare(
|
|
164
|
+
.prepare(`SELECT * FROM rigs ${where} ORDER BY created_at`)
|
|
151
165
|
.all();
|
|
152
166
|
return rows.map((r) => this.rowToRig(r));
|
|
153
167
|
}
|
|
@@ -165,11 +179,14 @@ export class RigRepository {
|
|
|
165
179
|
.all(name);
|
|
166
180
|
return rows.map((r) => this.rowToRig(r));
|
|
167
181
|
}
|
|
168
|
-
getRigSummaries() {
|
|
182
|
+
getRigSummaries(filter) {
|
|
183
|
+
const cond = archiveWhereClause("r.archived_at", filter);
|
|
184
|
+
const where = cond ? `WHERE ${cond}` : "";
|
|
169
185
|
const rows = this.db.prepare(`
|
|
170
186
|
SELECT
|
|
171
187
|
r.id,
|
|
172
188
|
r.name,
|
|
189
|
+
r.archived_at AS archived_at,
|
|
173
190
|
(SELECT COUNT(*) FROM nodes n WHERE n.rig_id = r.id) AS node_count,
|
|
174
191
|
EXISTS(SELECT 1 FROM rig_services rs WHERE rs.rig_id = r.id) AS has_services,
|
|
175
192
|
ls.id AS latest_snapshot_id,
|
|
@@ -181,6 +198,7 @@ export class RigRepository {
|
|
|
181
198
|
ORDER BY s2.created_at DESC, s2.id DESC
|
|
182
199
|
LIMIT 1
|
|
183
200
|
)
|
|
201
|
+
${where}
|
|
184
202
|
ORDER BY r.created_at
|
|
185
203
|
`).all();
|
|
186
204
|
return rows.map((r) => ({
|
|
@@ -190,8 +208,27 @@ export class RigRepository {
|
|
|
190
208
|
hasServices: r.has_services === 1,
|
|
191
209
|
latestSnapshotAt: r.latest_snapshot_at,
|
|
192
210
|
latestSnapshotId: r.latest_snapshot_id,
|
|
211
|
+
archivedAt: r.archived_at,
|
|
193
212
|
}));
|
|
194
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* OPR.0.3.3.19 - soft-archive a rig: sets `archived_at`. The rigs row,
|
|
216
|
+
* topology rows, and snapshots are all RETAINED (this is NOT the delete
|
|
217
|
+
* path - contrast deleteRig). Returns false if the rig was already archived.
|
|
218
|
+
*/
|
|
219
|
+
archiveRig(rigId) {
|
|
220
|
+
const result = this.db
|
|
221
|
+
.prepare("UPDATE rigs SET archived_at = datetime('now'), updated_at = datetime('now') WHERE id = ? AND archived_at IS NULL")
|
|
222
|
+
.run(rigId);
|
|
223
|
+
return result.changes > 0;
|
|
224
|
+
}
|
|
225
|
+
/** OPR.0.3.3.19 - reverse archive: clears `archived_at`. Returns false if not archived. */
|
|
226
|
+
unarchiveRig(rigId) {
|
|
227
|
+
const result = this.db
|
|
228
|
+
.prepare("UPDATE rigs SET archived_at = NULL, updated_at = datetime('now') WHERE id = ? AND archived_at IS NOT NULL")
|
|
229
|
+
.run(rigId);
|
|
230
|
+
return result.changes > 0;
|
|
231
|
+
}
|
|
195
232
|
deleteRig(rigId) {
|
|
196
233
|
this.db.prepare("DELETE FROM rigs WHERE id = ?").run(rigId);
|
|
197
234
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rig-repository.js","sourceRoot":"","sources":["../../src/domain/rig-repository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rig-repository.js","sourceRoot":"","sources":["../../src/domain/rig-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,7 @@ export declare class RigInstantiator {
|
|
|
29
29
|
import { type AgentResolverFsOps } from "./agent-resolver.js";
|
|
30
30
|
import { StartupOrchestrator } from "./startup-orchestrator.js";
|
|
31
31
|
import { PodRepository } from "./pod-repository.js";
|
|
32
|
+
import type { RigSpec as PodRigSpec, RigSpecPod, RigSpecPodMember } from "./types.js";
|
|
32
33
|
import type { RuntimeAdapter } from "./runtime-adapter.js";
|
|
33
34
|
import type { TmuxAdapter } from "../adapters/tmux.js";
|
|
34
35
|
interface PodInstantiatorDeps {
|
|
@@ -109,6 +110,70 @@ export type LaunchMaterializedOutcome = {
|
|
|
109
110
|
code: "target_rig_not_found";
|
|
110
111
|
message: string;
|
|
111
112
|
};
|
|
113
|
+
/** A pod-local edge declared alongside an added member (from/to are member ids
|
|
114
|
+
* within the pod; resolved against the new member + existing pod-mates). */
|
|
115
|
+
export interface AddMemberEdge {
|
|
116
|
+
from: string;
|
|
117
|
+
to: string;
|
|
118
|
+
kind: string;
|
|
119
|
+
}
|
|
120
|
+
export interface AddMemberResult {
|
|
121
|
+
podId: string;
|
|
122
|
+
podNamespace: string;
|
|
123
|
+
node: {
|
|
124
|
+
logicalId: string;
|
|
125
|
+
nodeId: string;
|
|
126
|
+
status: "launched" | "failed" | "attention_required";
|
|
127
|
+
error?: string;
|
|
128
|
+
sessionName?: string;
|
|
129
|
+
};
|
|
130
|
+
/** Pod-local edges persisted with the add (empty when none declared). The
|
|
131
|
+
* endpoints are qualified logical ids. Edges carry no runtime behavior yet
|
|
132
|
+
* (OPR.0.3.3.24 fence) - they record declared topology intent. */
|
|
133
|
+
edges: Array<{
|
|
134
|
+
from: string;
|
|
135
|
+
to: string;
|
|
136
|
+
kind: string;
|
|
137
|
+
}>;
|
|
138
|
+
warnings?: string[];
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Outcome of the `add_member` converge op (OPR.0.3.3.24). Mirrors the
|
|
142
|
+
* MaterializeOutcome error vocabulary where it overlaps (validation_failed /
|
|
143
|
+
* preflight_failed) and adds the add-member-specific honest codes
|
|
144
|
+
* (rig_not_found / pod_not_found / member_conflict / edge_unresolved). Every
|
|
145
|
+
* failure carries a human-actionable message or error list (the 3-part
|
|
146
|
+
* honest-error contract that the converge interface surfaces to CLI + MCP).
|
|
147
|
+
*/
|
|
148
|
+
export type AddMemberOutcome = {
|
|
149
|
+
ok: true;
|
|
150
|
+
result: AddMemberResult;
|
|
151
|
+
} | {
|
|
152
|
+
ok: false;
|
|
153
|
+
code: "rig_not_found";
|
|
154
|
+
message: string;
|
|
155
|
+
} | {
|
|
156
|
+
ok: false;
|
|
157
|
+
code: "pod_not_found";
|
|
158
|
+
message: string;
|
|
159
|
+
} | {
|
|
160
|
+
ok: false;
|
|
161
|
+
code: "member_conflict";
|
|
162
|
+
message: string;
|
|
163
|
+
} | {
|
|
164
|
+
ok: false;
|
|
165
|
+
code: "edge_unresolved";
|
|
166
|
+
message: string;
|
|
167
|
+
} | {
|
|
168
|
+
ok: false;
|
|
169
|
+
code: "validation_failed";
|
|
170
|
+
errors: string[];
|
|
171
|
+
} | {
|
|
172
|
+
ok: false;
|
|
173
|
+
code: "preflight_failed";
|
|
174
|
+
errors: string[];
|
|
175
|
+
warnings: string[];
|
|
176
|
+
};
|
|
112
177
|
/**
|
|
113
178
|
* Pod-aware rig instantiator. Creates pods, nodes, edges, and runs
|
|
114
179
|
* startup orchestration per node with resolved agent specs.
|
|
@@ -122,7 +187,73 @@ export declare class PodRigInstantiator {
|
|
|
122
187
|
suppressSummaryEvent?: boolean;
|
|
123
188
|
cwdOverride?: string;
|
|
124
189
|
}): Promise<MaterializeOutcome>;
|
|
190
|
+
/**
|
|
191
|
+
* materialize with a STRUCTURED front (OPR.0.3.3.24): the YAML-free sibling of
|
|
192
|
+
* materialize(). Runs the SAME front-end (validate + preflight, via the
|
|
193
|
+
* preflight CORE using this adapter's fsOps) on an already-built raw spec
|
|
194
|
+
* OBJECT, then the persistence core - so `expand` (and the add_member op) drop
|
|
195
|
+
* the synthetic-spec YAML round-trip. Byte-identical to materialize(yaml): same
|
|
196
|
+
* validate(externalQualifiedIds), same preflight checks, same MaterializeOutcome
|
|
197
|
+
* error codes (validation_failed / preflight_failed / target_rig_not_found /
|
|
198
|
+
* materialize_conflict). fsOps stays encapsulated here (the expansion service
|
|
199
|
+
* has none) - this wrapper is mechanics only, no behaviour/layering change.
|
|
200
|
+
*/
|
|
201
|
+
materializeStructured(raw: unknown, rigRoot: string, opts?: {
|
|
202
|
+
targetRigId?: string;
|
|
203
|
+
suppressSummaryEvent?: boolean;
|
|
204
|
+
cwdOverride?: string;
|
|
205
|
+
}): Promise<MaterializeOutcome>;
|
|
206
|
+
/**
|
|
207
|
+
* materialize CORE (OPR.0.3.3.24): the persistence body of materialize, taking
|
|
208
|
+
* an already-parsed + validated + preflighted PodRigSpec. Creates pods +
|
|
209
|
+
* member nodes (via the create-node primitive) + edges + events in one
|
|
210
|
+
* transaction. Parse/validate/preflight is the caller's separable front-end
|
|
211
|
+
* (materialize() for YAML; expand/add_member build + validate a structured
|
|
212
|
+
* spec). This is the cut that lets `expand` drop its synthetic-spec hack and
|
|
213
|
+
* `add_member` reuse the exact create path — create+launch only, no identity
|
|
214
|
+
* migration.
|
|
215
|
+
*/
|
|
216
|
+
materializeValidatedSpec(rigSpec: PodRigSpec, rigRoot: string, opts?: {
|
|
217
|
+
targetRigId?: string;
|
|
218
|
+
suppressSummaryEvent?: boolean;
|
|
219
|
+
cwdOverride?: string;
|
|
220
|
+
}): Promise<MaterializeOutcome>;
|
|
125
221
|
launchMaterialized(rigSpecYaml: string, rigRoot: string, targetRigId: string): Promise<LaunchMaterializedOutcome>;
|
|
222
|
+
/**
|
|
223
|
+
* launch CORE (OPR.0.3.3.24): given an already-parsed+validated spec whose
|
|
224
|
+
* nodes are already materialized, compute launch order and bring each node
|
|
225
|
+
* live via the launch-binding primitive. Extracted from launchMaterialized so
|
|
226
|
+
* `expand` (and the add_member op) launch a structured spec WITHOUT a YAML
|
|
227
|
+
* round-trip; launchMaterialized(yaml) is the parse/validate/normalize front
|
|
228
|
+
* over it. Behaviour identical (loop body relocated verbatim).
|
|
229
|
+
*/
|
|
230
|
+
launchValidatedSpec(rigSpec: PodRigSpec, rigRoot: string, targetRigId: string): Promise<LaunchMaterializedOutcome>;
|
|
231
|
+
/**
|
|
232
|
+
* add_member converge op (OPR.0.3.3.24): add a single MEMBER to an EXISTING
|
|
233
|
+
* pod in a live rig, composing the two extracted primitives — createMemberNode
|
|
234
|
+
* (create-node) + launchBinding (launch-binding) — WITHOUT createPod and
|
|
235
|
+
* WITHOUT fabricating a synthetic rig spec.
|
|
236
|
+
*
|
|
237
|
+
* Identity-migration-FREE: the new node mints a fresh node id + fresh logical
|
|
238
|
+
* id + fresh `@rigged_*` at launch; no existing seat's logical id,
|
|
239
|
+
* continuity_state, queue routing, or session is re-keyed. This is the
|
|
240
|
+
* source-visible fault line that lets add_member ship while move/fork wait for
|
|
241
|
+
* the 0.4.0 identity stack.
|
|
242
|
+
*
|
|
243
|
+
* Versus materialize: this does NOT call materializeValidatedSpec (which always
|
|
244
|
+
* createPods and carries the pod-exists conflict guard). It resolves the
|
|
245
|
+
* EXISTING pod's DB id via `podRepo.getPodByNamespace` and creates the one node
|
|
246
|
+
* directly under it. The pod-exists guard is lifted (adding to a live pod is
|
|
247
|
+
* not a conflict); the per-member duplicate-logical-id guard is KEPT (AC-3).
|
|
248
|
+
*/
|
|
249
|
+
addMemberToPod(rigId: string, podNamespace: string, memberFragment: Record<string, unknown>, rigRoot: string, opts?: {
|
|
250
|
+
cwdOverride?: string;
|
|
251
|
+
edges?: Array<{
|
|
252
|
+
from: string;
|
|
253
|
+
to: string;
|
|
254
|
+
kind: string;
|
|
255
|
+
}>;
|
|
256
|
+
}): Promise<AddMemberOutcome>;
|
|
126
257
|
instantiate(rigSpecYaml: string, rigRoot: string, opts?: {
|
|
127
258
|
cwdOverride?: string;
|
|
128
259
|
prelaunchHook?: (rigId: string) => Promise<{
|
|
@@ -136,6 +267,51 @@ export declare class PodRigInstantiator {
|
|
|
136
267
|
private computePodLaunchOrder;
|
|
137
268
|
private processTerminalMember;
|
|
138
269
|
private findMemberContext;
|
|
270
|
+
/**
|
|
271
|
+
* create-node primitive (OPR.0.3.3.24): mint a fresh node row for one member
|
|
272
|
+
* (fresh stable id + fresh qualified logical id, `pod_id` = the given pod) plus
|
|
273
|
+
* the matching `node.added` event. Extracted from materialize's loop so the
|
|
274
|
+
* `add_member` converge op and a de-YAML'd `expand` create a member node
|
|
275
|
+
* WITHOUT fabricating a synthetic rig spec. Identity-migration-FREE: addNode
|
|
276
|
+
* mints a brand-new identity; nothing existing re-keys. The caller pushes the
|
|
277
|
+
* returned `event` into its transaction's persisted-events list.
|
|
278
|
+
*/
|
|
279
|
+
createMemberNode(input: {
|
|
280
|
+
rigId: string;
|
|
281
|
+
qualifiedId: string;
|
|
282
|
+
member: RigSpecPodMember;
|
|
283
|
+
podId: string;
|
|
284
|
+
rigRoot: string;
|
|
285
|
+
cwdOverride?: string;
|
|
286
|
+
}): {
|
|
287
|
+
node: import("./types.js").Node;
|
|
288
|
+
event: import("./types.js").PersistedEvent;
|
|
289
|
+
};
|
|
290
|
+
/**
|
|
291
|
+
* launch-binding primitive (OPR.0.3.3.24): given an already-created node and
|
|
292
|
+
* its member context, bring it fully live — harness launch + startup
|
|
293
|
+
* projection + delivery + readiness + `@rigged_*` metadata. Dispatches the
|
|
294
|
+
* terminal vs agent launch path. Extracted as an independently-callable
|
|
295
|
+
* primitive so launchMaterialized's loop, `expand`, and the `add_member`
|
|
296
|
+
* converge op all launch a node WITHOUT fabricating a synthetic rig spec.
|
|
297
|
+
* Behaviour is identical to the prior inline dispatch.
|
|
298
|
+
*/
|
|
299
|
+
launchBinding(input: {
|
|
300
|
+
rigId: string;
|
|
301
|
+
rigSpec: PodRigSpec;
|
|
302
|
+
rigRoot: string;
|
|
303
|
+
pod: RigSpecPod;
|
|
304
|
+
member: RigSpecPodMember;
|
|
305
|
+
qualifiedId: string;
|
|
306
|
+
nodeId: string;
|
|
307
|
+
cwdOverride?: string;
|
|
308
|
+
}): Promise<{
|
|
309
|
+
status: "launched" | "failed" | "attention_required";
|
|
310
|
+
error?: string;
|
|
311
|
+
evidence?: string;
|
|
312
|
+
sessionName?: string;
|
|
313
|
+
warnings?: string[];
|
|
314
|
+
}>;
|
|
139
315
|
private launchExistingAgentMember;
|
|
140
316
|
private launchExistingTerminalMember;
|
|
141
317
|
private updateNodeResolvedConfig;
|