agentera 3.0.0-dev.27 → 3.0.0-dev.29

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 (196) hide show
  1. package/README.md +7 -5
  2. package/bundle/CHANGELOG.md +17 -2
  3. package/bundle/DESIGN.md +3 -7
  4. package/bundle/README.md +8 -10
  5. package/bundle/UPGRADE.md +60 -16
  6. package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
  7. package/bundle/references/adapters/package-registry.yaml +2 -0
  8. package/bundle/references/adapters/package-surface-characterization.md +2 -3
  9. package/bundle/references/adapters/runtime-lifecycle-authority.yaml +2 -3
  10. package/bundle/references/adapters/runtime-retired-resources.yaml +78 -14
  11. package/bundle/references/analysis/benchmark.md +2 -9
  12. package/bundle/references/artifacts/state-storage-authority.yaml +308 -14
  13. package/bundle/references/cli/audience-namespace-cli-migration.yaml +1 -1
  14. package/bundle/references/cli/bundle-skill-vocabulary.yaml +1 -1
  15. package/bundle/references/cli/capability-instruction-contract.yaml +0 -3
  16. package/bundle/references/cli/capability-instruction-structure.md +2 -2
  17. package/bundle/references/cli/hybrid-route-contract.yaml +416 -0
  18. package/bundle/references/cli/prime-consumer-compatibility.yaml +12 -11
  19. package/bundle/references/cli/routing-execution-vocabulary.yaml +0 -4
  20. package/bundle/references/cli/routing-model.md +136 -91
  21. package/bundle/references/cli/trigger-schema-enrichment.md +50 -46
  22. package/bundle/references/cli/vocabulary.md +8 -11
  23. package/bundle/references/meta/documentation-inventory.md +1 -3
  24. package/bundle/skills/agentera/SKILL.md +50 -18
  25. package/bundle/skills/agentera/capabilities/audit/schemas/triggers.yaml +13 -35
  26. package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +14 -36
  27. package/bundle/skills/agentera/capabilities/design/schemas/triggers.yaml +5 -34
  28. package/bundle/skills/agentera/capabilities/discuss/schemas/triggers.yaml +6 -40
  29. package/bundle/skills/agentera/capabilities/document/schemas/triggers.yaml +5 -34
  30. package/bundle/skills/agentera/capabilities/optimize/schemas/triggers.yaml +4 -35
  31. package/bundle/skills/agentera/capabilities/orchestrate/schemas/artifacts.yaml +10 -6
  32. package/bundle/skills/agentera/capabilities/orchestrate/schemas/exit.yaml +3 -2
  33. package/bundle/skills/agentera/capabilities/orchestrate/schemas/triggers.yaml +5 -37
  34. package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +6 -5
  35. package/bundle/skills/agentera/capabilities/plan/schemas/triggers.yaml +8 -31
  36. package/bundle/skills/agentera/capabilities/profile/schemas/triggers.yaml +8 -37
  37. package/bundle/skills/agentera/capabilities/research/schemas/triggers.yaml +5 -29
  38. package/bundle/skills/agentera/capabilities/status/schemas/triggers.yaml +7 -47
  39. package/bundle/skills/agentera/capabilities/vision/schemas/triggers.yaml +7 -39
  40. package/bundle/skills/agentera/capability_schema_contract.yaml +29 -29
  41. package/bundle/skills/agentera/route-phrases.yaml +81 -0
  42. package/bundle/skills/agentera/schemas/artifacts/health.yaml +25 -7
  43. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +1 -2
  44. package/dist/capabilities/discuss/instructions.js +1 -1
  45. package/dist/capabilities/discuss/instructions.js.map +1 -1
  46. package/dist/capabilities/orchestrate/instructions.js +22 -2
  47. package/dist/capabilities/orchestrate/instructions.js.map +1 -1
  48. package/dist/capabilities/plan/instructions.js +1 -1
  49. package/dist/capabilities/plan/instructions.js.map +1 -1
  50. package/dist/cli/capabilityContext/evidence.js +1 -1
  51. package/dist/cli/capabilityContext/evidence.js.map +1 -1
  52. package/dist/cli/capabilityContext/startup.js +2 -0
  53. package/dist/cli/capabilityContext/startup.js.map +1 -1
  54. package/dist/cli/commands/entityMigrate.js +7 -3
  55. package/dist/cli/commands/entityMigrate.js.map +1 -1
  56. package/dist/cli/commands/prime/briefOrientation.js +10 -3
  57. package/dist/cli/commands/prime/briefOrientation.js.map +1 -1
  58. package/dist/cli/commands/prime/collectEntityOrientation.js +64 -4
  59. package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -1
  60. package/dist/cli/commands/prime/orientationOutput.js +41 -15
  61. package/dist/cli/commands/prime/orientationOutput.js.map +1 -1
  62. package/dist/cli/commands/prime.js +4 -3
  63. package/dist/cli/commands/prime.js.map +1 -1
  64. package/dist/cli/commands/route.js +142 -0
  65. package/dist/cli/commands/route.js.map +1 -0
  66. package/dist/cli/commands/schema.js +21 -23
  67. package/dist/cli/commands/schema.js.map +1 -1
  68. package/dist/cli/commands/state/write.js +19 -0
  69. package/dist/cli/commands/state/write.js.map +1 -1
  70. package/dist/cli/commands/upgrade.js +1 -1
  71. package/dist/cli/commands/upgrade.js.map +1 -1
  72. package/dist/cli/commands/validate.js +2 -119
  73. package/dist/cli/commands/validate.js.map +1 -1
  74. package/dist/cli/commands/verify.js +17 -1
  75. package/dist/cli/commands/verify.js.map +1 -1
  76. package/dist/cli/dispatch/check.js +2 -7
  77. package/dist/cli/dispatch/check.js.map +1 -1
  78. package/dist/cli/dispatch/index.js +18 -0
  79. package/dist/cli/dispatch/index.js.map +1 -1
  80. package/dist/cli/dispatch/lifecycle.js +7 -5
  81. package/dist/cli/dispatch/lifecycle.js.map +1 -1
  82. package/dist/cli/errors.js +2 -2
  83. package/dist/cli/errors.js.map +1 -1
  84. package/dist/cli/help.js +24 -5
  85. package/dist/cli/help.js.map +1 -1
  86. package/dist/cli/migrationRequired.js +1 -1
  87. package/dist/cli/migrationRequired.js.map +1 -1
  88. package/dist/eval/hybridRouteEvaluation.js +156 -0
  89. package/dist/eval/hybridRouteEvaluation.js.map +1 -0
  90. package/dist/registries/capabilityContract.js +5 -20
  91. package/dist/registries/capabilityContract.js.map +1 -1
  92. package/dist/registries/hybridRoute.js +203 -0
  93. package/dist/registries/hybridRoute.js.map +1 -0
  94. package/dist/registries/hybridRouteReceipt.js +221 -0
  95. package/dist/registries/hybridRouteReceipt.js.map +1 -0
  96. package/dist/registries/triggerLoader.js +7 -43
  97. package/dist/registries/triggerLoader.js.map +1 -1
  98. package/dist/release/releaseMetadata.js +2 -0
  99. package/dist/release/releaseMetadata.js.map +1 -1
  100. package/dist/runtime/lifecycleAuthority.js +10 -11
  101. package/dist/runtime/lifecycleAuthority.js.map +1 -1
  102. package/dist/runtime/nativeResourceCleanup.js +317 -0
  103. package/dist/runtime/nativeResourceCleanup.js.map +1 -0
  104. package/dist/setup/codex/cli.js +9 -40
  105. package/dist/setup/codex/cli.js.map +1 -1
  106. package/dist/setup/codex/configToml.js +2 -83
  107. package/dist/setup/codex/configToml.js.map +1 -1
  108. package/dist/setup/codex/constants.js +0 -15
  109. package/dist/setup/codex/constants.js.map +1 -1
  110. package/dist/setup/codex/state.js +2 -20
  111. package/dist/setup/codex/state.js.map +1 -1
  112. package/dist/setup/codex.js +2 -4
  113. package/dist/setup/codex.js.map +1 -1
  114. package/dist/state/archiveDiscovery.js +24 -35
  115. package/dist/state/archiveDiscovery.js.map +1 -1
  116. package/dist/state/canonicalMigrationRecord.js +37 -0
  117. package/dist/state/canonicalMigrationRecord.js.map +1 -0
  118. package/dist/state/decisionEntities.js +73 -33
  119. package/dist/state/decisionEntities.js.map +1 -1
  120. package/dist/state/decisionLegacyValidation.js +31 -0
  121. package/dist/state/decisionLegacyValidation.js.map +1 -1
  122. package/dist/state/decisionMigrationProvenance.js +117 -0
  123. package/dist/state/decisionMigrationProvenance.js.map +1 -0
  124. package/dist/state/durability.js +24 -5
  125. package/dist/state/durability.js.map +1 -1
  126. package/dist/state/entityCutover.js +2 -2
  127. package/dist/state/entityCutover.js.map +1 -1
  128. package/dist/state/entityMigrationCausality.js +99 -0
  129. package/dist/state/entityMigrationCausality.js.map +1 -0
  130. package/dist/state/entityMigrationPreview.js +138 -77
  131. package/dist/state/entityMigrationPreview.js.map +1 -1
  132. package/dist/state/entityStorage.js +59 -24
  133. package/dist/state/entityStorage.js.map +1 -1
  134. package/dist/state/healthEntities.js +69 -33
  135. package/dist/state/healthEntities.js.map +1 -1
  136. package/dist/state/healthEntityValidation.js +14 -1
  137. package/dist/state/healthEntityValidation.js.map +1 -1
  138. package/dist/state/legacySummaryRecord.js +7 -0
  139. package/dist/state/legacySummaryRecord.js.map +1 -0
  140. package/dist/state/listCursor.js +43 -0
  141. package/dist/state/listCursor.js.map +1 -0
  142. package/dist/state/migrationSourceBinding.js +29 -0
  143. package/dist/state/migrationSourceBinding.js.map +1 -0
  144. package/dist/state/progressEntities.js +35 -59
  145. package/dist/state/progressEntities.js.map +1 -1
  146. package/dist/state/retrievalAuthority.js +10 -0
  147. package/dist/state/retrievalAuthority.js.map +1 -1
  148. package/dist/state/summaryEntityRead.js +26 -0
  149. package/dist/state/summaryEntityRead.js.map +1 -0
  150. package/dist/state/summaryMigrationProvenance.js +67 -0
  151. package/dist/state/summaryMigrationProvenance.js.map +1 -0
  152. package/dist/state/summarySourceRowAuthority.js +37 -0
  153. package/dist/state/summarySourceRowAuthority.js.map +1 -0
  154. package/dist/state/write/explain.js +2 -1
  155. package/dist/state/write/explain.js.map +1 -1
  156. package/dist/upgrade/lifecycleUpgrade.js +14 -14
  157. package/dist/upgrade/lifecycleUpgrade.js.map +1 -1
  158. package/dist/upgrade/upgradeOrchestrator.js +12 -12
  159. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  160. package/dist/validate/capability.js +11 -2
  161. package/dist/validate/capability.js.map +1 -1
  162. package/package.json +2 -2
  163. package/bundle/references/analysis/analytics-boundary-proportional-2026-07-20.yaml +0 -74
  164. package/bundle/references/analysis/evidence/analytics-boundary-proportional-2026-07-20/source-focused-1.json.gz +0 -0
  165. package/bundle/references/analysis/evidence/analytics-boundary-proportional-2026-07-20/source-focused-2.json.gz +0 -0
  166. package/bundle/references/analysis/evidence/analytics-boundary-proportional-2026-07-20/source-focused-3.json.gz +0 -0
  167. package/bundle/references/analysis/evidence/migration-pagination-proportional-2026-07-20/source-focused-1.json.gz +0 -0
  168. package/bundle/references/analysis/evidence/migration-pagination-proportional-2026-07-20/source-focused-2.json.gz +0 -0
  169. package/bundle/references/analysis/evidence/migration-pagination-proportional-2026-07-20/source-focused-3.json.gz +0 -0
  170. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/precommit-cli-route.log.gz +0 -0
  171. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/precommit-cli.log.gz +0 -0
  172. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/precommit-documentation.log.gz +0 -0
  173. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/recompute.mjs +0 -98
  174. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/source-1.json.gz +0 -0
  175. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/source-2.json.gz +0 -0
  176. package/bundle/references/analysis/evidence/verification-baseline-2026-07-20/source-3.json.gz +0 -0
  177. package/bundle/references/analysis/migration-pagination-proportional-2026-07-20.yaml +0 -64
  178. package/bundle/references/analysis/verification-baseline-2026-07-20.yaml +0 -313
  179. package/bundle/references/analysis/verification-final-proof-2026-07-21.yaml +0 -340
  180. package/bundle/references/analysis/worker-policy-2026-07-21.yaml +0 -207
  181. package/bundle/skills/agentera/agents/audit.toml +0 -6
  182. package/bundle/skills/agentera/agents/build.toml +0 -6
  183. package/bundle/skills/agentera/agents/design.toml +0 -6
  184. package/bundle/skills/agentera/agents/discuss.toml +0 -6
  185. package/bundle/skills/agentera/agents/document.toml +0 -6
  186. package/bundle/skills/agentera/agents/optimize.toml +0 -6
  187. package/bundle/skills/agentera/agents/orchestrate.toml +0 -6
  188. package/bundle/skills/agentera/agents/plan.toml +0 -6
  189. package/bundle/skills/agentera/agents/profile.toml +0 -6
  190. package/bundle/skills/agentera/agents/research.toml +0 -6
  191. package/bundle/skills/agentera/agents/status.toml +0 -6
  192. package/bundle/skills/agentera/agents/vision.toml +0 -6
  193. package/dist/runtime/retiredRuntimeCleanup.js +0 -238
  194. package/dist/runtime/retiredRuntimeCleanup.js.map +0 -1
  195. package/dist/setup/codex/agents.js +0 -96
  196. package/dist/setup/codex/agents.js.map +0 -1
@@ -1,238 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { loadYamlMapping } from "../core/yaml.js";
4
- import { resolveSourceRoot } from "../core/sourceRoot.js";
5
- import { LIFECYCLE_OPERATION_CONTRACT_RELATIVE_PATH, LIFECYCLE_MANUAL_REVIEW_GUIDANCE, applyLifecycleOperations, createLifecycleOwnershipManifest, emptyLifecycleOwnershipLedger, planLifecycleOperations, validateLifecycleOwnershipLedger, } from "./lifecycleOperations.js";
6
- import { LIFECYCLE_AUTHORITY_RELATIVE_PATH, RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH, } from "./lifecycleAuthority.js";
7
- function isMapping(value) {
8
- return value !== null && typeof value === "object" && !Array.isArray(value);
9
- }
10
- function stringList(value) {
11
- return Array.isArray(value) && value.every((item) => typeof item === "string") ? value : [];
12
- }
13
- export function validateRetiredRuntimeCleanupContractData(value) {
14
- if (!isMapping(value))
15
- return ["retired runtime cleanup contract must be a YAML object"];
16
- const errors = [];
17
- if (value.schema_version !== "agentera.retiredRuntimeResources.v1") {
18
- errors.push("schema_version must be agentera.retiredRuntimeResources.v1");
19
- }
20
- if (value.status !== "retired_migration_contract")
21
- errors.push("status must be retired_migration_contract");
22
- if (value.decision !== 92)
23
- errors.push("decision must cite approved Decision 92");
24
- if (value.authority !== LIFECYCLE_AUTHORITY_RELATIVE_PATH) {
25
- errors.push(`authority must point to ${LIFECYCLE_AUTHORITY_RELATIVE_PATH}`);
26
- }
27
- if (value.operation_contract !== LIFECYCLE_OPERATION_CONTRACT_RELATIVE_PATH) {
28
- errors.push(`operation_contract must point to ${LIFECYCLE_OPERATION_CONTRACT_RELATIVE_PATH}`);
29
- }
30
- const policy = isMapping(value.policy) ? value.policy : {};
31
- if (policy.active_inventory_exposure !== "forbidden"
32
- || policy.preview !== "strictly_read_only"
33
- || policy.apply_requires !== "explicit_approval"
34
- || policy.ownership !== "matching_whole_resource_legacy_ledger_identity_and_fingerprint"
35
- || policy.unsupported_platform_result !== "action_required") {
36
- errors.push("policy must fail closed with pure preview, explicit approval, and legacy ledger ownership");
37
- }
38
- const runtimes = value.retired_runtimes;
39
- if (!Array.isArray(runtimes) || runtimes.length !== 1 || !isMapping(runtimes[0])) {
40
- return [...errors, "retired_runtimes must contain exactly one Claude migration record"];
41
- }
42
- const claude = runtimes[0];
43
- if (claude.id !== "claude"
44
- || claude.active_runtime !== false
45
- || claude.source_product !== "claude-code") {
46
- errors.push("retired Claude record must be inactive with source_product claude-code");
47
- }
48
- const resources = claude.resources;
49
- if (!Array.isArray(resources) || resources.length !== 1 || !isMapping(resources[0])) {
50
- errors.push("Claude cleanup must declare exactly one legacy Agentera resource");
51
- }
52
- else if (resources[0].id !== "claude.agentera-skill-link"
53
- || resources[0].kind !== "symlink"
54
- || resources[0].intent !== "remove"
55
- || resources[0].destination !== "{home}/.claude/skills/agentera"
56
- || resources[0].ledger_status !== "legacy") {
57
- errors.push("Claude cleanup resource must be the legacy-ledger Agentera skill symlink removal");
58
- }
59
- const neverTouch = stringList(claude.never_touch);
60
- for (const required of ["projects", "settings", "credentials", "conversations", "cache", "stats"]) {
61
- if (!neverTouch.some((entry) => entry.toLowerCase().includes(required))) {
62
- errors.push(`Claude never_touch must cover ${required}`);
63
- }
64
- }
65
- return errors;
66
- }
67
- export function loadRetiredRuntimeCleanupContract(contractPath = path.join(resolveSourceRoot(), RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH)) {
68
- const data = loadYamlMapping(fs.readFileSync(contractPath, "utf8"));
69
- const errors = validateRetiredRuntimeCleanupContractData(data);
70
- if (errors.length > 0)
71
- throw new Error(`Retired runtime cleanup contract validation failed: ${errors.join("; ")}`);
72
- const runtimes = data.retired_runtimes.map((runtime) => ({
73
- id: runtime.id,
74
- displayName: runtime.display_name,
75
- sourceProduct: runtime.source_product,
76
- resources: runtime.resources.map((resource) => ({
77
- id: resource.id,
78
- kind: resource.kind,
79
- destination: resource.destination,
80
- ledgerStatus: resource.ledger_status,
81
- })),
82
- neverTouch: runtime.never_touch,
83
- safetyNote: runtime.safety_note,
84
- }));
85
- return { sourcePath: contractPath, runtimes };
86
- }
87
- export function validateRetiredRuntimeCleanupContractRoot(root = resolveSourceRoot()) {
88
- const contractPath = path.join(root, RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH);
89
- if (!fs.existsSync(contractPath)) {
90
- return [`${RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH}: missing retired runtime cleanup contract`];
91
- }
92
- try {
93
- return validateRetiredRuntimeCleanupContractData(loadYamlMapping(fs.readFileSync(contractPath, "utf8"))).map((error) => `${RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH}: ${error}`);
94
- }
95
- catch (error) {
96
- return [`${RETIRED_RUNTIME_CLEANUP_CONTRACT_RELATIVE_PATH}: could not parse contract: ${error.message}`];
97
- }
98
- }
99
- function expandHome(template, home) {
100
- if (!template.startsWith("{home}/") || template.includes("..")) {
101
- throw new Error(`unsafe retired runtime destination template: ${template}`);
102
- }
103
- return path.join(path.resolve(home), template.slice("{home}/".length));
104
- }
105
- function legacyLedgerDiagnostics(plan) {
106
- const ledger = plan.request.ledger ?? emptyLifecycleOwnershipLedger();
107
- const diagnostics = [];
108
- for (const operation of plan.request.operations) {
109
- const planned = plan.operations.find((candidate) => candidate.id === operation.id);
110
- const records = ledger.records.filter((record) => record.resourceId === operation.id);
111
- if (records.length === 0 && planned?.action === "noop")
112
- continue;
113
- if (records.length !== 1) {
114
- diagnostics.push(`${operation.id}: retired cleanup requires exactly one ownership ledger record`);
115
- continue;
116
- }
117
- const record = records[0];
118
- if (record.status !== "legacy"
119
- || record.scope !== "whole"
120
- || path.resolve(record.destination) !== path.resolve(operation.destination)
121
- || record.kind !== operation.kind
122
- || record.identity === null
123
- || record.fingerprint === null) {
124
- diagnostics.push(`${operation.id}: retired cleanup requires matching whole-resource ledger status legacy with identity and fingerprint`);
125
- }
126
- }
127
- return diagnostics;
128
- }
129
- function blockedRetiredPlan(plan, diagnostics) {
130
- const reason = `${diagnostics.join("; ")} ${LIFECYCLE_MANUAL_REVIEW_GUIDANCE}`;
131
- return {
132
- ...plan,
133
- operations: plan.operations.map((operation) => operation.action === "noop"
134
- ? operation
135
- : operation.action === "remove" && operation.ownership === "managed"
136
- ? {
137
- ...operation,
138
- state: "ambiguous_ownership",
139
- ownership: "ambiguous",
140
- action: "blocked_unowned",
141
- reason,
142
- }
143
- : {
144
- ...operation,
145
- reason: `${operation.reason}; ${reason}`,
146
- }),
147
- };
148
- }
149
- export function previewRetiredRuntimeCleanup(opts) {
150
- const contract = opts.contract ?? loadRetiredRuntimeCleanupContract();
151
- const runtime = contract.runtimes.find((candidate) => candidate.id === opts.runtimeId);
152
- if (!runtime)
153
- throw new Error(`unknown retired runtime cleanup id: ${opts.runtimeId}`);
154
- const operations = runtime.resources.map((resource) => ({
155
- id: resource.id,
156
- destination: expandHome(resource.destination, opts.home),
157
- kind: resource.kind,
158
- intent: "remove",
159
- required: true,
160
- }));
161
- const suppliedLedger = opts.ledger ?? emptyLifecycleOwnershipLedger();
162
- const ledgerErrors = validateLifecycleOwnershipLedger(suppliedLedger);
163
- const plan = planLifecycleOperations({
164
- allowedRoots: [path.resolve(opts.home)],
165
- operations,
166
- manifest: createLifecycleOwnershipManifest(operations),
167
- ledger: ledgerErrors.length === 0 ? suppliedLedger : emptyLifecycleOwnershipLedger(),
168
- });
169
- const ledgerDiagnostics = ledgerErrors.length > 0
170
- ? ledgerErrors.map((error) => `invalid ownership ledger: ${error}`)
171
- : legacyLedgerDiagnostics(plan);
172
- const authorizedPlan = ledgerDiagnostics.length === 0
173
- ? plan
174
- : blockedRetiredPlan(plan, ledgerDiagnostics);
175
- return {
176
- schemaVersion: "agentera.retiredRuntimeCleanupPreview.v1",
177
- mode: "preview",
178
- runtimeId: runtime.id,
179
- activeRuntime: false,
180
- sourceProduct: runtime.sourceProduct,
181
- approvalRequired: true,
182
- ownershipRequirement: "matching_whole_resource_legacy_ledger",
183
- ledgerAuthorization: ledgerDiagnostics.length === 0 ? "legacy_match_or_absent_noop" : "blocked",
184
- ledgerDiagnostics,
185
- plan: authorizedPlan,
186
- neverTouch: runtime.neverTouch.map((entry) => expandHome(entry, opts.home)),
187
- safetyNote: runtime.safetyNote,
188
- };
189
- }
190
- function approvalRequiredResult(preview) {
191
- const operations = preview.plan.operations.map((operation) => ({
192
- ...operation,
193
- action: operation.action === "noop" || operation.action === "blocked_unowned"
194
- ? operation.action
195
- : "action_required",
196
- status: operation.action === "noop"
197
- ? "noop"
198
- : operation.action === "blocked_unowned"
199
- ? "blocked_unowned"
200
- : "action_required",
201
- dependencyCauses: [],
202
- reason: operation.action === "noop" || operation.action === "blocked_unowned"
203
- ? operation.reason
204
- : "explicit cleanup approval is required",
205
- }));
206
- const summary = {
207
- applied: 0,
208
- noop: operations.filter((item) => item.status === "noop").length,
209
- failed: 0,
210
- blocked_unowned: operations.filter((item) => item.status === "blocked_unowned").length,
211
- skipped_dependency: 0,
212
- action_required: operations.filter((item) => item.status === "action_required").length,
213
- };
214
- return {
215
- schemaVersion: "agentera.lifecycleApplyResult.v1",
216
- status: operations.every((item) => item.status === "noop") ? "success" : "non_success",
217
- operations,
218
- summary,
219
- requiredUnmet: operations.filter((item) => item.required && item.status !== "noop").map((item) => item.id),
220
- ownershipLedger: preview.plan.request.ledger ?? emptyLifecycleOwnershipLedger(),
221
- };
222
- }
223
- export function applyRetiredRuntimeCleanup(preview, options) {
224
- const currentLedgerDiagnostics = legacyLedgerDiagnostics(preview.plan);
225
- const authorized = preview.ledgerAuthorization === "legacy_match_or_absent_noop"
226
- && currentLedgerDiagnostics.length === 0;
227
- const result = options.approved && authorized
228
- ? applyLifecycleOperations(preview.plan, options)
229
- : approvalRequiredResult(preview);
230
- return {
231
- ...result,
232
- runtimeId: preview.runtimeId,
233
- activeRuntime: false,
234
- sourceProduct: preview.sourceProduct,
235
- approval: options.approved ? "approved" : "required",
236
- };
237
- }
238
- //# sourceMappingURL=retiredRuntimeCleanup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retiredRuntimeCleanup.js","sourceRoot":"","sources":["../../../../../home/jgabor/git/agentera/packages/cli/src/runtime/retiredRuntimeCleanup.ts"],"names":[],"mappings":"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"}
@@ -1,96 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { expanduser, isFile, pathExists } from "../../core/paths.js";
4
- import { CAPABILITY_AGENT_NAMES } from "./constants.js";
5
- export function codexAgentSourceDir(installRoot) {
6
- const candidates = [
7
- path.join(installRoot, "app", "skills", "agentera", "agents"),
8
- path.join(installRoot, "skills", "agentera", "agents"),
9
- ];
10
- for (const candidate of candidates) {
11
- try {
12
- if (fs.statSync(candidate).isDirectory())
13
- return candidate;
14
- }
15
- catch {
16
- /* not a dir */
17
- }
18
- }
19
- return candidates[0];
20
- }
21
- export function defaultAgentsDirForConfig(configPath) {
22
- const expanded = expanduser(configPath);
23
- if (path.basename(expanded) === "config.toml" && path.basename(path.dirname(expanded)) === ".codex") {
24
- return path.join(path.dirname(expanded), "agents");
25
- }
26
- throw new Error("Codex agent descriptors can be inferred only for documented config layouts: " +
27
- "~/.codex/config.toml or <project>/.codex/config.toml. " +
28
- "Pass --agents-dir for nonstandard --config-file paths.");
29
- }
30
- function codexDescriptorManaged(text) {
31
- const lines = text.split(/\r\n|\r|\n/).slice(0, 5);
32
- return lines.some((line) => line.trim() === "# agentera_managed: true");
33
- }
34
- export function planAgentDescriptorChanges(installRoot, agentsDir, opts) {
35
- const sourceDir = codexAgentSourceDir(installRoot);
36
- const changes = [];
37
- for (const name of CAPABILITY_AGENT_NAMES) {
38
- const source = path.join(sourceDir, `${name}.toml`);
39
- const target = path.join(agentsDir, `${name}.toml`);
40
- let sourceText;
41
- try {
42
- sourceText = fs.readFileSync(source, "utf8");
43
- }
44
- catch {
45
- changes.push({ action: "blocked", name, source, target, message: "source descriptor is missing", content: "" });
46
- continue;
47
- }
48
- if (!pathExists(target)) {
49
- changes.push({ action: "pending", name, source, target, message: "would install Codex agent descriptor", content: sourceText });
50
- continue;
51
- }
52
- if (!isFile(target)) {
53
- changes.push({ action: "blocked", name, source, target, message: "target exists but is not a regular file", content: sourceText });
54
- continue;
55
- }
56
- let targetText;
57
- try {
58
- targetText = fs.readFileSync(target, "utf8");
59
- }
60
- catch (exc) {
61
- changes.push({ action: "blocked", name, source, target, message: `cannot read target descriptor: ${exc.message}`, content: sourceText });
62
- continue;
63
- }
64
- if (targetText === sourceText) {
65
- changes.push({ action: "noop", name, source, target, message: "Codex agent descriptor is current", content: sourceText });
66
- }
67
- else if (opts.force || codexDescriptorManaged(targetText)) {
68
- changes.push({ action: "pending", name, source, target, message: "would refresh Codex agent descriptor", content: sourceText });
69
- }
70
- else {
71
- changes.push({
72
- action: "blocked",
73
- name,
74
- source,
75
- target,
76
- message: "target exists without Agentera ownership proof; treating it as user-owned",
77
- content: sourceText,
78
- });
79
- }
80
- }
81
- return changes;
82
- }
83
- export function writeAgentDescriptorChanges(changes) {
84
- for (const change of changes) {
85
- if (change.action !== "pending")
86
- continue;
87
- fs.mkdirSync(path.dirname(change.target), { recursive: true });
88
- fs.writeFileSync(change.target, change.content, "utf8");
89
- }
90
- }
91
- function readTextOrNull(p) {
92
- if (!pathExists(p))
93
- return null;
94
- return fs.readFileSync(p, "utf8");
95
- }
96
- //# sourceMappingURL=agents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/setup/codex/agents.ts"],"names":[],"mappings":"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"}