@aui.io/apollo 0.1.84 → 0.1.87

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 (84) hide show
  1. package/README.md +4 -4
  2. package/node_modules/@aui.io/apollo-cli/dist/src/commands/bundles.js +239 -33
  3. package/node_modules/@aui.io/apollo-cli/dist/src/commands/bundles.js.map +1 -1
  4. package/node_modules/@aui.io/apollo-cli/dist/src/commands/hierarchy.js +2 -2
  5. package/node_modules/@aui.io/apollo-cli/dist/src/commands/hierarchy.js.map +1 -1
  6. package/node_modules/@aui.io/apollo-cli/dist/src/commands/mockdb.js +9 -8
  7. package/node_modules/@aui.io/apollo-cli/dist/src/commands/mockdb.js.map +1 -1
  8. package/node_modules/@aui.io/apollo-cli/dist/src/commands/operate.js +31 -12
  9. package/node_modules/@aui.io/apollo-cli/dist/src/commands/operate.js.map +1 -1
  10. package/node_modules/@aui.io/apollo-cli/package.json +3 -3
  11. package/node_modules/@aui.io/apollo-core/dist/src/api/agent-settings.d.ts +17 -0
  12. package/node_modules/@aui.io/apollo-core/dist/src/api/agent-settings.js +4 -0
  13. package/node_modules/@aui.io/apollo-core/dist/src/api/agent-settings.js.map +1 -1
  14. package/node_modules/@aui.io/apollo-core/dist/src/api/builder-api.d.ts +36 -0
  15. package/node_modules/@aui.io/apollo-core/dist/src/api/builder-api.js +6 -0
  16. package/node_modules/@aui.io/apollo-core/dist/src/api/builder-api.js.map +1 -1
  17. package/node_modules/@aui.io/apollo-core/dist/src/api/management.d.ts +108 -4
  18. package/node_modules/@aui.io/apollo-core/dist/src/api/management.js +198 -18
  19. package/node_modules/@aui.io/apollo-core/dist/src/api/management.js.map +1 -1
  20. package/node_modules/@aui.io/apollo-core/dist/src/api/mock-db.d.ts +1 -5
  21. package/node_modules/@aui.io/apollo-core/dist/src/api/mock-db.js +4 -10
  22. package/node_modules/@aui.io/apollo-core/dist/src/api/mock-db.js.map +1 -1
  23. package/node_modules/@aui.io/apollo-core/dist/src/bundle/baseline.d.ts +12 -2
  24. package/node_modules/@aui.io/apollo-core/dist/src/bundle/baseline.js +67 -15
  25. package/node_modules/@aui.io/apollo-core/dist/src/bundle/baseline.js.map +1 -1
  26. package/node_modules/@aui.io/apollo-core/dist/src/bundle/files.d.ts +13 -0
  27. package/node_modules/@aui.io/apollo-core/dist/src/bundle/files.js +20 -0
  28. package/node_modules/@aui.io/apollo-core/dist/src/bundle/files.js.map +1 -1
  29. package/node_modules/@aui.io/apollo-core/dist/src/bundle/lineage.d.ts +29 -0
  30. package/node_modules/@aui.io/apollo-core/dist/src/bundle/lineage.js +65 -0
  31. package/node_modules/@aui.io/apollo-core/dist/src/bundle/lineage.js.map +1 -0
  32. package/node_modules/@aui.io/apollo-core/dist/src/bundle/materialize.d.ts +25 -4
  33. package/node_modules/@aui.io/apollo-core/dist/src/bundle/materialize.js +78 -8
  34. package/node_modules/@aui.io/apollo-core/dist/src/bundle/materialize.js.map +1 -1
  35. package/node_modules/@aui.io/apollo-core/dist/src/config/index.d.ts +2 -0
  36. package/node_modules/@aui.io/apollo-core/dist/src/config/index.js +7 -0
  37. package/node_modules/@aui.io/apollo-core/dist/src/config/index.js.map +1 -1
  38. package/node_modules/@aui.io/apollo-core/dist/src/config/mockdb-keys.d.ts +3 -0
  39. package/node_modules/@aui.io/apollo-core/dist/src/config/mockdb-keys.js +5 -0
  40. package/node_modules/@aui.io/apollo-core/dist/src/config/mockdb-keys.js.map +1 -1
  41. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.d.ts +75 -0
  42. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.js +109 -0
  43. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.js.map +1 -1
  44. package/node_modules/@aui.io/apollo-core/dist/src/index.d.ts +1 -1
  45. package/node_modules/@aui.io/apollo-core/dist/src/index.js.map +1 -1
  46. package/node_modules/@aui.io/apollo-core/dist/src/output/index.d.ts +2 -0
  47. package/node_modules/@aui.io/apollo-core/dist/src/output/index.js +5 -1
  48. package/node_modules/@aui.io/apollo-core/dist/src/output/index.js.map +1 -1
  49. package/node_modules/@aui.io/apollo-core/dist/src/services/bundles.d.ts +76 -2
  50. package/node_modules/@aui.io/apollo-core/dist/src/services/bundles.js +225 -70
  51. package/node_modules/@aui.io/apollo-core/dist/src/services/bundles.js.map +1 -1
  52. package/node_modules/@aui.io/apollo-core/dist/src/services/doctor.js +4 -3
  53. package/node_modules/@aui.io/apollo-core/dist/src/services/doctor.js.map +1 -1
  54. package/node_modules/@aui.io/apollo-core/dist/src/services/hierarchy.d.ts +14 -21
  55. package/node_modules/@aui.io/apollo-core/dist/src/services/hierarchy.js +17 -27
  56. package/node_modules/@aui.io/apollo-core/dist/src/services/hierarchy.js.map +1 -1
  57. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.d.ts +15 -9
  58. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.js +41 -18
  59. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.js.map +1 -1
  60. package/node_modules/@aui.io/apollo-core/dist/src/services/mockdb.d.ts +4 -3
  61. package/node_modules/@aui.io/apollo-core/dist/src/services/mockdb.js +84 -117
  62. package/node_modules/@aui.io/apollo-core/dist/src/services/mockdb.js.map +1 -1
  63. package/node_modules/@aui.io/apollo-core/dist/src/services/versions.d.ts +88 -0
  64. package/node_modules/@aui.io/apollo-core/dist/src/services/versions.js +202 -0
  65. package/node_modules/@aui.io/apollo-core/dist/src/services/versions.js.map +1 -0
  66. package/node_modules/@aui.io/apollo-core/dist/src/skills/agents-page.js +2 -2
  67. package/node_modules/@aui.io/apollo-core/dist/src/skills/agents-page.js.map +1 -1
  68. package/node_modules/@aui.io/apollo-core/package.json +1 -1
  69. package/node_modules/@aui.io/apollo-tui/dist/src/actions/registry.js +13 -13
  70. package/node_modules/@aui.io/apollo-tui/dist/src/actions/registry.js.map +1 -1
  71. package/node_modules/@aui.io/apollo-tui/dist/src/activity/operationStore.js +2 -2
  72. package/node_modules/@aui.io/apollo-tui/dist/src/activity/operationStore.js.map +1 -1
  73. package/node_modules/@aui.io/apollo-tui/dist/src/author/data.js +3 -2
  74. package/node_modules/@aui.io/apollo-tui/dist/src/author/data.js.map +1 -1
  75. package/node_modules/@aui.io/apollo-tui/dist/src/lib/actions.d.ts +11 -19
  76. package/node_modules/@aui.io/apollo-tui/dist/src/lib/actions.js +90 -81
  77. package/node_modules/@aui.io/apollo-tui/dist/src/lib/actions.js.map +1 -1
  78. package/node_modules/@aui.io/apollo-tui/dist/src/lib/commands.d.ts +2 -0
  79. package/node_modules/@aui.io/apollo-tui/dist/src/lib/commands.js +6 -6
  80. package/node_modules/@aui.io/apollo-tui/dist/src/lib/commands.js.map +1 -1
  81. package/node_modules/@aui.io/apollo-tui/dist/src/opentui-app.js +21 -13
  82. package/node_modules/@aui.io/apollo-tui/dist/src/opentui-app.js.map +1 -1
  83. package/node_modules/@aui.io/apollo-tui/package.json +2 -2
  84. package/package.json +4 -4
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aui.io/apollo-cli",
3
- "version": "0.1.84",
3
+ "version": "0.1.87",
4
4
  "description": "Command-line client for the Apollo runtime",
5
5
  "type": "module",
6
6
  "engines": {
@@ -33,12 +33,12 @@
33
33
  "test": "vitest run"
34
34
  },
35
35
  "dependencies": {
36
- "@aui.io/apollo-core": "0.1.84",
36
+ "@aui.io/apollo-core": "0.1.87",
37
37
  "commander": "^14.0.3",
38
38
  "picocolors": "^1.1.1"
39
39
  },
40
40
  "optionalDependencies": {
41
- "@aui.io/apollo-tui": "0.1.84"
41
+ "@aui.io/apollo-tui": "0.1.87"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@eslint/js": "^9.39.5",
@@ -50,6 +50,8 @@ export interface BuildBundlePushResponse {
50
50
  * what they uploaded instead. */
51
51
  files_count?: number;
52
52
  created_at: string;
53
+ /** The program commit this bundle was pinned to, when one was named. */
54
+ program_version_tag?: string | null;
53
55
  }
54
56
  /** The bundle document returned by `build-bundles/pull`. */
55
57
  export interface BuildBundle {
@@ -60,6 +62,11 @@ export interface BuildBundle {
60
62
  notes?: string | null;
61
63
  created_at: string;
62
64
  created_by: string;
65
+ /** The program COMMIT this material belongs with (`v3.12`), recorded at push
66
+ * time. Absent on a bundle pushed before the pin existed, or by a caller
67
+ * that named none — a pull asking for a commit reads this to see whether it
68
+ * got the material it asked for or a fallback. */
69
+ program_version_tag?: string | null;
63
70
  }
64
71
  /** 200 response body from `build-bundles/pull`. */
65
72
  export interface BuildBundlePullResponse {
@@ -164,6 +171,10 @@ export declare class AgentSettingsClient {
164
171
  pushBuildBundle(agentId: string, input: {
165
172
  files: BundleUploadFile[];
166
173
  createdBy: string;
174
+ /** The program commit this material belongs with (`v3.12`) — the tag the
175
+ * program push just returned. Omitted, the bundle is unpinned and a
176
+ * pull can only ask for the agent's latest. */
177
+ programVersionTag?: string;
167
178
  notes?: string;
168
179
  }): Promise<BuildBundlePushResponse>;
169
180
  /**
@@ -173,6 +184,12 @@ export declare class AgentSettingsClient {
173
184
  */
174
185
  pullBuildBundle(agentId: string, options?: {
175
186
  version?: number;
187
+ /** Ask for the material that belongs with this program commit (`v3.12`)
188
+ * instead of the agent's latest push. No bundle carries that exact
189
+ * save → the newest one pinned to an earlier save of the same line;
190
+ * none there either → the latest. Ignored when `version` is given.
191
+ * The answer's own `program_version_tag` says which came back. */
192
+ programVersionTag?: string;
176
193
  expiresIn?: number;
177
194
  }): Promise<BuildBundlePullResponse>;
178
195
  }
@@ -62,6 +62,9 @@ export class AgentSettingsClient {
62
62
  fields: {
63
63
  created_by: input.createdBy,
64
64
  paths: JSON.stringify(input.files.map((file) => file.path)),
65
+ ...(input.programVersionTag === undefined
66
+ ? {}
67
+ : { program_version_tag: input.programVersionTag }),
65
68
  ...(input.notes === undefined ? {} : { notes: input.notes }),
66
69
  },
67
70
  },
@@ -76,6 +79,7 @@ export class AgentSettingsClient {
76
79
  return this.http.request(`/v1/agents/${encodeURIComponent(agentId)}/build-bundles/pull`, {
77
80
  query: {
78
81
  version: options.version,
82
+ program_version_tag: options.programVersionTag,
79
83
  expires_in: options.expiresIn,
80
84
  },
81
85
  });
@@ -1 +1 @@
1
- {"version":3,"file":"agent-settings.js","sourceRoot":"","sources":["../../../src/api/agent-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-settings.js","sourceRoot":"","sources":["../../../src/api/agent-settings.ts"],"names":[],"mappings":"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"}
@@ -417,6 +417,10 @@ export declare class BuilderApiClient {
417
417
  validateTree(files: BuilderTree, agentId?: string, options?: {
418
418
  fix?: boolean;
419
419
  }): Promise<BuilderValidation>;
420
+ /** Bring `theirs` into `ours` over `base` — the mechanical half of
421
+ * `apollo merge-from`, computed by the builder's own merge so the CLI and
422
+ * the builder's `merge_from` tool agree on every hunk. Nothing is stored. */
423
+ merge(request: MergeTreesRequest): Promise<MergeTreesResult>;
420
424
  /** Enqueue one advisor turn (202 immediately — the answer comes by poll). */
421
425
  advise(ask: AdvisorAsk): Promise<AdvisorStarted>;
422
426
  adviceView(turnId: string): Promise<AdvisorView>;
@@ -454,3 +458,35 @@ export declare class BuilderApiClient {
454
458
  * names the rows that moved. Same 404 as `certificate`. */
455
459
  certificateForTree(agentId: string, version: string, files: BuilderTree): Promise<CertificateView>;
456
460
  }
461
+ /** `{path: text}` program trees; a `src/` prefix is accepted. */
462
+ export interface MergeTreesRequest {
463
+ ours: Record<string, string>;
464
+ theirs: Record<string, string>;
465
+ /** The save both lines were branched from; omitted = two-way. */
466
+ base?: Record<string, string>;
467
+ /** Narrow the merge to these files (a cherry-pick). */
468
+ paths?: string[];
469
+ }
470
+ export interface MergeRegion {
471
+ base: string;
472
+ ours: string;
473
+ theirs: string;
474
+ }
475
+ export interface MergeConflict {
476
+ path: string;
477
+ reason: string;
478
+ ours: string | null;
479
+ theirs: string | null;
480
+ /** The three-way hunks both sides changed differently; empty for a
481
+ * whole-file conflict (a deletion against a change, or a two-way merge). */
482
+ regions: MergeRegion[];
483
+ }
484
+ export interface MergeTreesResult {
485
+ /** The merged tree — every conflicting region kept at OURS. */
486
+ files: Record<string, string>;
487
+ /** Per touched path: `ours` | `theirs` | `both` | `conflict`. */
488
+ taken: Record<string, string>;
489
+ conflicts: MergeConflict[];
490
+ clean: boolean;
491
+ summary: string;
492
+ }
@@ -21,6 +21,12 @@ export class BuilderApiClient {
21
21
  },
22
22
  });
23
23
  }
24
+ /** Bring `theirs` into `ours` over `base` — the mechanical half of
25
+ * `apollo merge-from`, computed by the builder's own merge so the CLI and
26
+ * the builder's `merge_from` tool agree on every hunk. Nothing is stored. */
27
+ merge(request) {
28
+ return this.http.request("/v1/builder/merge", { method: "POST", body: request });
29
+ }
24
30
  /** Enqueue one advisor turn (202 immediately — the answer comes by poll). */
25
31
  advise(ask) {
26
32
  return this.http.request("/v1/builder/advisor", {
@@ -1 +1 @@
1
- {"version":3,"file":"builder-api.js","sourceRoot":"","sources":["../../../src/api/builder-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder-api.js","sourceRoot":"","sources":["../../../src/api/builder-api.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,9 @@ export interface AgentVersion {
22
22
  version_tag: string;
23
23
  status: VersionStatus;
24
24
  parent_version_id?: string | null;
25
+ /** The exact COMMIT this branch was cut from (`v3.12`); absent for a
26
+ * first version or one created before lineage was recorded. */
27
+ parent_version_tag?: string | null;
25
28
  label?: string | null;
26
29
  tags: string[];
27
30
  notes?: string | null;
@@ -47,7 +50,26 @@ export interface VersionPush {
47
50
  created_at: string;
48
51
  commit_message?: string | null;
49
52
  }
53
+ /** One COMMIT on a branch, as the internal surface lists it. */
54
+ export interface AgentRevision {
55
+ id: string;
56
+ /** The commit's own tag, e.g. `v3.7`. */
57
+ version_tag: string;
58
+ caller: string;
59
+ commit_message?: string | null;
60
+ created_at: string;
61
+ created_by: string;
62
+ created_by_email?: string | null;
63
+ }
50
64
  export type VersionSource = "version" | "agent-scope" | "template" | "empty";
65
+ /** Which COMMIT an agent serves, as apollo reads it back off the agent. */
66
+ export interface AgentLiveSave {
67
+ agent_id: string;
68
+ active_version_id?: string | null;
69
+ /** The exact commit that is live (`v3.7`). */
70
+ active_version_tag?: string | null;
71
+ }
72
+ export declare function isLiveRef(ref: string): boolean;
51
73
  /**
52
74
  * The version row `live_version_id` points at. The field's name says id,
53
75
  * but the wire returns the version *tag* on some environments (staging
@@ -55,8 +77,22 @@ export type VersionSource = "version" | "agent-scope" | "template" | "empty";
55
77
  * wild, so a live lookup must match either. Matching only one side made
56
78
  * `agent import` report "no live version" for agents that had one
57
79
  * (REPORTS-26), while sends assumed the tag shape and worked by luck.
80
+ *
81
+ * The tag names the live COMMIT, which its branch may have moved past
82
+ * (`v3.7` while the row reads `v3.9`), so a tag matches its branch by number.
58
83
  */
59
84
  export declare function findLiveVersion(agent: Pick<Agent, "live_version_id">, versions: AgentVersion[]): AgentVersion | undefined;
85
+ /** The commit `live` (from `findLiveVersion`) serves: the tag the agent names,
86
+ * or the branch's newest when the agent names the version by id. */
87
+ export declare function liveCommitTag(agent: Pick<Agent, "live_version_id">, live: AgentVersion): string;
88
+ /** A branch's name, `v3` — how `branch list` prints it and every verb takes it. */
89
+ export declare function branchName(version: Pick<AgentVersion, "version_tag"> & {
90
+ version_number?: number;
91
+ }): string;
92
+ /** The default name of a branch cut from `version`: its name, marked continued once. */
93
+ export declare function continuedName(version: Pick<AgentVersion, "label" | "version_tag">): string;
94
+ /** A branch's state as people say it: the registry's `published` is `locked`. */
95
+ export declare function branchState(status: VersionStatus): string;
60
96
  export declare class ManagementClient {
61
97
  private readonly http;
62
98
  constructor(http: HttpClient);
@@ -71,9 +107,8 @@ export declare class ManagementClient {
71
107
  *
72
108
  * `runtimeVersion` picks the engine and with it the create flow: a `1.x`
73
109
  * family runs the legacy v1 flow; anything else creates a runtime-v2 agent
74
- * seeded with one empty editable draft (no live version until the first
75
- * real push + publish). `fromTemplate` names an explicit clone source; the
76
- * agent then goes live on the template's content immediately.
110
+ * seeded with one open branch whose first commit is live. `fromTemplate`
111
+ * names an explicit clone source for that commit.
77
112
  */
78
113
  createAgent(projectId: string, input: {
79
114
  name: string;
@@ -81,12 +116,27 @@ export declare class ManagementClient {
81
116
  runtimeVersion?: string;
82
117
  }): Promise<Agent>;
83
118
  getAgent(agentId: string): Promise<Agent>;
119
+ /**
120
+ * The agent's versions. INTERNAL, for `parent_version_tag`: the published
121
+ * record has no lineage field, and the merge-base walk
122
+ * (`bundle/lineage.ts`) and `apollo branch list`'s "from v3.12" line both
123
+ * read it.
124
+ *
125
+ * The internal surface answers `{items}` where the published one answers
126
+ * `{results}`; the envelope is normalized here so no caller has to know
127
+ * which surface served it.
128
+ */
84
129
  listVersions(agentId: string, filters?: {
85
130
  status?: VersionStatus;
86
131
  tag?: string;
87
132
  versionNumber?: number;
88
133
  excludeRevisions?: boolean;
89
134
  }): Promise<Page<AgentVersion>>;
135
+ /** A branch's commits, newest first — one page of `size`, with the branch's total. */
136
+ listRevisions(agentId: string, versionId: string, size: number): Promise<{
137
+ results: AgentRevision[];
138
+ total: number;
139
+ }>;
90
140
  /**
91
141
  * Resolve a local pin (`v{major}.{revision}`) to a version row.
92
142
  *
@@ -96,14 +146,62 @@ export declare class ManagementClient {
96
146
  * `v0.11` on the same draft.
97
147
  */
98
148
  resolveVersion(agentId: string, tag: string): Promise<AgentVersion>;
149
+ /**
150
+ * A ref → the branch row AND the exact COMMIT it names. `resolveVersion`
151
+ * answers with the row (whose tag is the branch's newest commit); a ref like
152
+ * `v3.7` that names an older commit keeps it here, so fetch, diff,
153
+ * merge-from and `version create --from` work from the commit the author
154
+ * pointed at, not the tip. `live` is the live commit, and a commit the
155
+ * branch does not have is refused rather than read as its newest.
156
+ */
157
+ resolveRef(agentId: string, ref: string): Promise<{
158
+ version: AgentVersion;
159
+ tag: string;
160
+ }>;
99
161
  createVersion(agentId: string, input: {
100
162
  source: VersionSource;
163
+ /** The signed-in user the new version is attributed to. */
164
+ createdBy: string;
101
165
  fromVersion?: string;
166
+ /** Cut from this exact commit of `fromVersion` (`v3.7`) rather than
167
+ * its latest one; recorded as the draft's `parent_version_tag`. */
168
+ fromVersionTag?: string;
102
169
  fromTemplate?: string;
103
170
  label?: string;
104
171
  tags?: string[];
105
172
  notes?: string;
106
173
  }): Promise<AgentVersion>;
174
+ /** Rename a version (its `label`) — the name people refer to it by. */
175
+ updateVersion(agentId: string, versionId: string, patch: {
176
+ label?: string;
177
+ notes?: string;
178
+ }): Promise<AgentVersion>;
179
+ /**
180
+ * LOCK a branch (draft → locked): no more commits land on it. Working-tree
181
+ * management, and no statement about customers — live is a pinned SAVE held
182
+ * by the agent, not by a version's status.
183
+ *
184
+ * INTERNAL, and not by choice: the published surface has no lock route at
185
+ * all (its `publish` verb locks AND ships, which is the pair this split
186
+ * exists to separate).
187
+ */
188
+ lockVersion(agentId: string, versionId: string, lockedBy: string): Promise<AgentVersion>;
189
+ /** UNLOCK a locked branch (locked → draft), so commits land on it again —
190
+ * the undo for locking one too early. It cannot change what customers get.
191
+ * INTERNAL: the published surface has no such verb. */
192
+ unlockVersion(agentId: string, versionId: string): Promise<AgentVersion>;
193
+ /**
194
+ * Make ONE COMMIT live — the exact bundle the agent serves.
195
+ *
196
+ * `versionTag` names it; omitted, the branch's newest commit goes live. Any
197
+ * non-archived branch qualifies, a draft included, and a later push onto
198
+ * it does NOT move the pointer. The answer is apollo's read-back of the
199
+ * agent, so a caller sees the commit that is actually live.
200
+ *
201
+ * INTERNAL: the published `publish` verb means "lock it, then ship its
202
+ * newest commit" and keeps that meaning.
203
+ */
204
+ activateSave(agentId: string, versionId: string, versionTag?: string): Promise<AgentLiveSave>;
107
205
  publishVersion(agentId: string, versionId: string): Promise<AgentVersion>;
108
206
  archiveVersion(agentId: string, versionId: string): Promise<AgentVersion>;
109
207
  /**
@@ -112,7 +210,13 @@ export declare class ManagementClient {
112
210
  * the agent's `active_blob_stats`). Omitted, the revision is unpinned —
113
211
  * exactly the payload every push sent before the field existed.
114
212
  */
115
- pushVersion(agentId: string, versionId: string, bundle: Record<string, unknown>, commitMessage?: string, runtimeVersion?: string): Promise<VersionPush>;
213
+ pushVersion(agentId: string, versionId: string, bundle: Record<string, unknown>,
214
+ /** The signed-in user the commit is attributed to. */
215
+ pushedBy: string, commitMessage?: string, runtimeVersion?: string,
216
+ /** The commit these changes are based on. The registry refuses the push
217
+ * (409 `agent_versions.version_moved`) when the version has moved past
218
+ * it — nobody's commit is ever silently overwritten. */
219
+ baseVersionTag?: string): Promise<VersionPush>;
116
220
  pullVersion(agentId: string, versionId: string, versionTag?: string): Promise<VersionPull>;
117
221
  }
118
222
  /** `v8.14` / `v8` → major (+ optional revision). */