agentera 3.0.0-dev.25 → 3.0.0-dev.26

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 (270) hide show
  1. package/README.md +16 -20
  2. package/bundle/CHANGELOG.md +15 -25
  3. package/bundle/README.md +13 -34
  4. package/bundle/UPGRADE.md +71 -165
  5. package/bundle/references/adapters/package-manifest-interface-model.yaml +40 -241
  6. package/bundle/references/adapters/package-registry.yaml +0 -145
  7. package/bundle/references/adapters/package-surface-characterization.md +13 -38
  8. package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +5 -219
  9. package/bundle/references/adapters/runtime-lifecycle-authority.yaml +2 -29
  10. package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +1 -1
  11. package/bundle/references/artifacts/state-storage-authority.yaml +43 -447
  12. package/bundle/references/cli/agent-ready-state-contract.yaml +9 -9
  13. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +3 -4
  14. package/bundle/references/cli/bundle-skill-vocabulary.yaml +9 -18
  15. package/bundle/references/cli/capability-tool-classification.yaml +2 -2
  16. package/bundle/references/cli/prime-consumer-compatibility.yaml +28 -98
  17. package/bundle/references/cli/routing-execution-vocabulary.yaml +4 -22
  18. package/bundle/references/cli/upgrade-repair-wording.md +8 -28
  19. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +2 -3
  20. package/bundle/references/cli/vocabulary.md +18 -23
  21. package/bundle/references/meta/documentation-inventory.md +1 -1
  22. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +3 -11
  23. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +1 -1
  24. package/dist/cli/capabilityContext/bespoke.js +8 -2
  25. package/dist/cli/capabilityContext/bespoke.js.map +1 -1
  26. package/dist/cli/capabilityContext/closeout.js +3 -3
  27. package/dist/cli/capabilityContext/closeout.js.map +1 -1
  28. package/dist/cli/capabilityContext/evidence.js +52 -40
  29. package/dist/cli/capabilityContext/evidence.js.map +1 -1
  30. package/dist/cli/capabilityContext/startup.js +1 -1
  31. package/dist/cli/capabilityContext/startup.js.map +1 -1
  32. package/dist/cli/commands/doctor.js +6 -64
  33. package/dist/cli/commands/doctor.js.map +1 -1
  34. package/dist/cli/commands/durability.js +12 -48
  35. package/dist/cli/commands/durability.js.map +1 -1
  36. package/dist/cli/commands/prime/briefOrientation.js +2 -19
  37. package/dist/cli/commands/prime/briefOrientation.js.map +1 -1
  38. package/dist/cli/commands/prime/bundleStatus.js +8 -2
  39. package/dist/cli/commands/prime/bundleStatus.js.map +1 -1
  40. package/dist/cli/commands/prime/collectEntityOrientation.js +27 -14
  41. package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -1
  42. package/dist/cli/commands/prime/collectOrientationState.js +31 -52
  43. package/dist/cli/commands/prime/collectOrientationState.js.map +1 -1
  44. package/dist/cli/commands/prime/orientationOutput.js +3 -11
  45. package/dist/cli/commands/prime/orientationOutput.js.map +1 -1
  46. package/dist/cli/commands/prime.js +0 -5
  47. package/dist/cli/commands/prime.js.map +1 -1
  48. package/dist/cli/commands/query.js +17 -49
  49. package/dist/cli/commands/query.js.map +1 -1
  50. package/dist/cli/commands/schema.js +19 -78
  51. package/dist/cli/commands/schema.js.map +1 -1
  52. package/dist/cli/commands/state/decisions.js +11 -57
  53. package/dist/cli/commands/state/decisions.js.map +1 -1
  54. package/dist/cli/commands/state/docs.js +56 -120
  55. package/dist/cli/commands/state/docs.js.map +1 -1
  56. package/dist/cli/commands/state/experimentRecords.js +22 -121
  57. package/dist/cli/commands/state/experimentRecords.js.map +1 -1
  58. package/dist/cli/commands/state/experiments.js +9 -75
  59. package/dist/cli/commands/state/experiments.js.map +1 -1
  60. package/dist/cli/commands/state/get.js +62 -143
  61. package/dist/cli/commands/state/get.js.map +1 -1
  62. package/dist/cli/commands/state/health.js +9 -123
  63. package/dist/cli/commands/state/health.js.map +1 -1
  64. package/dist/cli/commands/state/index.js +2 -2
  65. package/dist/cli/commands/state/index.js.map +1 -1
  66. package/dist/cli/commands/state/list.js +20 -36
  67. package/dist/cli/commands/state/list.js.map +1 -1
  68. package/dist/cli/commands/state/objective.js +19 -86
  69. package/dist/cli/commands/state/objective.js.map +1 -1
  70. package/dist/cli/commands/state/plan.js +9 -388
  71. package/dist/cli/commands/state/plan.js.map +1 -1
  72. package/dist/cli/commands/state/planTasks.js +58 -93
  73. package/dist/cli/commands/state/planTasks.js.map +1 -1
  74. package/dist/cli/commands/state/plans.js +13 -40
  75. package/dist/cli/commands/state/plans.js.map +1 -1
  76. package/dist/cli/commands/state/progress.js +10 -55
  77. package/dist/cli/commands/state/progress.js.map +1 -1
  78. package/dist/cli/commands/state/todo.js +24 -133
  79. package/dist/cli/commands/state/todo.js.map +1 -1
  80. package/dist/cli/commands/state/write.js +11 -33
  81. package/dist/cli/commands/state/write.js.map +1 -1
  82. package/dist/cli/commands/upgrade.js +48 -18
  83. package/dist/cli/commands/upgrade.js.map +1 -1
  84. package/dist/cli/commands/upgradeVerify.js +21 -15
  85. package/dist/cli/commands/upgradeVerify.js.map +1 -1
  86. package/dist/cli/commands/validate.js +1 -9
  87. package/dist/cli/commands/validate.js.map +1 -1
  88. package/dist/cli/dispatch/check.js +5 -12
  89. package/dist/cli/dispatch/check.js.map +1 -1
  90. package/dist/cli/dispatch/index.js +30 -29
  91. package/dist/cli/dispatch/index.js.map +1 -1
  92. package/dist/cli/dispatch/lifecycle.js +23 -40
  93. package/dist/cli/dispatch/lifecycle.js.map +1 -1
  94. package/dist/cli/help.js +20 -100
  95. package/dist/cli/help.js.map +1 -1
  96. package/dist/cli/migrationRequired.js +22 -19
  97. package/dist/cli/migrationRequired.js.map +1 -1
  98. package/dist/cli/orientation/attention.js +1 -97
  99. package/dist/cli/orientation/attention.js.map +1 -1
  100. package/dist/cli/stateQuery.js +1 -2
  101. package/dist/cli/stateQuery.js.map +1 -1
  102. package/dist/core/skillIdentity.js +24 -0
  103. package/dist/core/skillIdentity.js.map +1 -0
  104. package/dist/hooks/common.js +1 -1
  105. package/dist/hooks/common.js.map +1 -1
  106. package/dist/hooks/compaction/status.js +2 -1
  107. package/dist/hooks/compaction/status.js.map +1 -1
  108. package/dist/hooks/cursorSessionStart.js +4 -25
  109. package/dist/hooks/cursorSessionStart.js.map +1 -1
  110. package/dist/hooks/projectHookInput.js +26 -0
  111. package/dist/hooks/projectHookInput.js.map +1 -0
  112. package/dist/hooks/sessionStart.js +23 -239
  113. package/dist/hooks/sessionStart.js.map +1 -1
  114. package/dist/hooks/sessionStop.js +4 -12
  115. package/dist/hooks/sessionStop.js.map +1 -1
  116. package/dist/hooks/validateArtifact/traversal.js +1 -1
  117. package/dist/hooks/validateArtifact/traversal.js.map +1 -1
  118. package/dist/registries/artifactRegistry.js +2 -1
  119. package/dist/registries/artifactRegistry.js.map +1 -1
  120. package/dist/registries/packageRegistry.js +57 -231
  121. package/dist/registries/packageRegistry.js.map +1 -1
  122. package/dist/release/releaseMetadata.js +1 -13
  123. package/dist/release/releaseMetadata.js.map +1 -1
  124. package/dist/runtime/lifecycleAdapterContract.js +4 -4
  125. package/dist/runtime/lifecycleAdapterContract.js.map +1 -1
  126. package/dist/runtime/lifecycleAdapters.js +14 -2
  127. package/dist/runtime/lifecycleAdapters.js.map +1 -1
  128. package/dist/runtime/lifecycleAuthority.js +5 -43
  129. package/dist/runtime/lifecycleAuthority.js.map +1 -1
  130. package/dist/runtime/lifecycleOperationContract.js +3 -2
  131. package/dist/runtime/lifecycleOperationContract.js.map +1 -1
  132. package/dist/runtime/lifecyclePublication.js +21 -0
  133. package/dist/runtime/lifecyclePublication.js.map +1 -1
  134. package/dist/setup/opencode.js +20 -12
  135. package/dist/setup/opencode.js.map +1 -1
  136. package/dist/setup/sharedSkill.js +46 -0
  137. package/dist/setup/sharedSkill.js.map +1 -0
  138. package/dist/setup/smokeChecks.js +16 -43
  139. package/dist/setup/smokeChecks.js.map +1 -1
  140. package/dist/state/decisionEntities.js +7 -4
  141. package/dist/state/decisionEntities.js.map +1 -1
  142. package/dist/state/durability.js +4 -240
  143. package/dist/state/durability.js.map +1 -1
  144. package/dist/state/entityCutover.js +90 -186
  145. package/dist/state/entityCutover.js.map +1 -1
  146. package/dist/state/entityStorage.js +27 -8
  147. package/dist/state/entityStorage.js.map +1 -1
  148. package/dist/state/healthEntities.js +7 -4
  149. package/dist/state/healthEntities.js.map +1 -1
  150. package/dist/state/objectiveExperimentEntities.js +7 -5
  151. package/dist/state/objectiveExperimentEntities.js.map +1 -1
  152. package/dist/state/planEntities.js +14 -10
  153. package/dist/state/planEntities.js.map +1 -1
  154. package/dist/state/progressEntities.js +4 -2
  155. package/dist/state/progressEntities.js.map +1 -1
  156. package/dist/state/startupProjection.js +3 -2
  157. package/dist/state/startupProjection.js.map +1 -1
  158. package/dist/state/stateMode.js +7 -0
  159. package/dist/state/stateMode.js.map +1 -1
  160. package/dist/state/todoDocsEntities.js +6 -4
  161. package/dist/state/todoDocsEntities.js.map +1 -1
  162. package/dist/state/write/explain.js +1 -9
  163. package/dist/state/write/explain.js.map +1 -1
  164. package/dist/state/write/transaction.js +22 -532
  165. package/dist/state/write/transaction.js.map +1 -1
  166. package/dist/upgrade/appContentRefresh.js +43 -28
  167. package/dist/upgrade/appContentRefresh.js.map +1 -1
  168. package/dist/upgrade/doctor.js +5 -1
  169. package/dist/upgrade/doctor.js.map +1 -1
  170. package/dist/upgrade/installedHooksRetirement.js +46 -39
  171. package/dist/upgrade/installedHooksRetirement.js.map +1 -1
  172. package/dist/upgrade/legacyAgentCleanup.js +132 -32
  173. package/dist/upgrade/legacyAgentCleanup.js.map +1 -1
  174. package/dist/upgrade/lifecycleUpgrade.js +65 -378
  175. package/dist/upgrade/lifecycleUpgrade.js.map +1 -1
  176. package/dist/upgrade/migrateArtifactsV2ToV3.js +151 -52
  177. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  178. package/dist/upgrade/migrationPublication.js +123 -0
  179. package/dist/upgrade/migrationPublication.js.map +1 -0
  180. package/dist/upgrade/projectIntegration.js +46 -113
  181. package/dist/upgrade/projectIntegration.js.map +1 -1
  182. package/dist/upgrade/projectIntegrationDecision.js +6 -96
  183. package/dist/upgrade/projectIntegrationDecision.js.map +1 -1
  184. package/dist/upgrade/runtimeMigration.js +222 -402
  185. package/dist/upgrade/runtimeMigration.js.map +1 -1
  186. package/dist/upgrade/upgradeCommands.js +5 -4
  187. package/dist/upgrade/upgradeCommands.js.map +1 -1
  188. package/dist/upgrade/upgradeLock.js +73 -41
  189. package/dist/upgrade/upgradeLock.js.map +1 -1
  190. package/dist/upgrade/upgradeOrchestrator.js +91 -158
  191. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  192. package/dist/upgrade/v3CapabilitySurface.js +2 -2
  193. package/dist/validate/appHomeContract.js +0 -4
  194. package/dist/validate/appHomeContract.js.map +1 -1
  195. package/package.json +7 -5
  196. package/bundle/.codex-plugin/plugin.json +0 -92
  197. package/bundle/.cursor/agents/agentera.md +0 -7
  198. package/bundle/.cursor/hooks.json +0 -32
  199. package/bundle/.cursor-plugin/plugin.json +0 -34
  200. package/bundle/.github/hooks/postToolUse.json +0 -9
  201. package/bundle/.github/hooks/preToolUse.json +0 -8
  202. package/bundle/.github/hooks/sessionEnd.json +0 -8
  203. package/bundle/.github/hooks/sessionStart.json +0 -8
  204. package/bundle/.github/plugin/plugin.json +0 -7
  205. package/bundle/.opencode/agents/agentera.md +0 -12
  206. package/bundle/.opencode/commands/agentera.md +0 -5
  207. package/bundle/.opencode/package.json +0 -31
  208. package/bundle/.opencode/plugins/agentera.js +0 -820
  209. package/bundle/agents/openai.yaml +0 -87
  210. package/bundle/hooks/codex-hooks.json +0 -31
  211. package/bundle/hooks/codex-plugin-hooks.json +0 -31
  212. package/bundle/plugin.json +0 -13
  213. package/bundle/references/adapters/cursor.md +0 -224
  214. package/bundle/references/adapters/opencode.md +0 -529
  215. package/bundle/references/adapters/runtime-adapter-characterization.md +0 -44
  216. package/bundle/references/adapters/runtime-adapter-interface-model.yaml +0 -200
  217. package/bundle/references/adapters/runtime-adapter-registry.yaml +0 -387
  218. package/bundle/references/adapters/runtime-feature-parity.md +0 -129
  219. package/dist/cli/commands/backfill.js +0 -231
  220. package/dist/cli/commands/backfill.js.map +0 -1
  221. package/dist/cli/commands/migrate.js +0 -681
  222. package/dist/cli/commands/migrate.js.map +0 -1
  223. package/dist/registries/runtimeAdapterRegistry.js +0 -324
  224. package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
  225. package/dist/setup/copilot.js +0 -227
  226. package/dist/setup/copilot.js.map +0 -1
  227. package/dist/setup/cursor.js +0 -129
  228. package/dist/setup/cursor.js.map +0 -1
  229. package/dist/setup/cursorSurfaces.js +0 -67
  230. package/dist/setup/cursorSurfaces.js.map +0 -1
  231. package/dist/setup/doctor/core.js +0 -296
  232. package/dist/setup/doctor/core.js.map +0 -1
  233. package/dist/setup/doctor/diagnostics.js +0 -201
  234. package/dist/setup/doctor/diagnostics.js.map +0 -1
  235. package/dist/setup/doctor/opencode.js +0 -301
  236. package/dist/setup/doctor/opencode.js.map +0 -1
  237. package/dist/setup/doctor/report.js +0 -425
  238. package/dist/setup/doctor/report.js.map +0 -1
  239. package/dist/setup/doctor.js +0 -10
  240. package/dist/setup/doctor.js.map +0 -1
  241. package/dist/state/gitBackfill.js +0 -561
  242. package/dist/state/gitBackfill.js.map +0 -1
  243. package/dist/state/gitBackfillAuthority.js +0 -141
  244. package/dist/state/gitBackfillAuthority.js.map +0 -1
  245. package/dist/state/gitBackfillHistory.js +0 -278
  246. package/dist/state/gitBackfillHistory.js.map +0 -1
  247. package/dist/state/gitBackfillOutput.js +0 -209
  248. package/dist/state/gitBackfillOutput.js.map +0 -1
  249. package/dist/state/legacyMigration.js +0 -516
  250. package/dist/state/legacyMigration.js.map +0 -1
  251. package/dist/state/legacyMigrationParser.js +0 -489
  252. package/dist/state/legacyMigrationParser.js.map +0 -1
  253. package/dist/state/migrationAuthority.js +0 -413
  254. package/dist/state/migrationAuthority.js.map +0 -1
  255. package/dist/state/migrationEnrichment.js +0 -35
  256. package/dist/state/migrationEnrichment.js.map +0 -1
  257. package/dist/state/projectionRecovery.js +0 -458
  258. package/dist/state/projectionRecovery.js.map +0 -1
  259. package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -568
  260. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
  261. package/dist/validate/lifecycleAdapters/legacyPythonParity.js +0 -93
  262. package/dist/validate/lifecycleAdapters/legacyPythonParity.js.map +0 -1
  263. package/dist/validate/lifecycleAdapters/lifecycleMain.js +0 -154
  264. package/dist/validate/lifecycleAdapters/lifecycleMain.js.map +0 -1
  265. package/dist/validate/lifecycleAdapters/nodeFormChecks.js +0 -481
  266. package/dist/validate/lifecycleAdapters/nodeFormChecks.js.map +0 -1
  267. package/dist/validate/lifecycleAdapters/shared.js +0 -198
  268. package/dist/validate/lifecycleAdapters/shared.js.map +0 -1
  269. package/dist/validate/lifecycleAdapters.js +0 -10
  270. package/dist/validate/lifecycleAdapters.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/cli/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -1,324 +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
- /** RuntimeAdapter catalog loader and contract validator. */
6
- export const REQUIRED_GROUPS = [
7
- "identity",
8
- "host_detection",
9
- "lifecycle_events",
10
- "artifact_validation",
11
- "subagent_dispatch",
12
- "config_targets",
13
- "diagnostics",
14
- "documentation_claims",
15
- ];
16
- const REQUIRED_FIELDS = {
17
- identity: ["runtime_id", "display_name", "adapter_family", "support_status"],
18
- host_detection: ["binary_names", "host_config_locations", "availability_probe_label"],
19
- lifecycle_events: ["supported_events", "unsupported_events", "event_status", "limitations"],
20
- artifact_validation: ["validation_events", "hard_gate_claims", "payload_reconstruction_limitations"],
21
- subagent_dispatch: ["mechanism", "setup_targets", "descriptor_sources", "invocation_pattern", "limitations"],
22
- config_targets: [
23
- "runtime_config_files",
24
- "hook_targets",
25
- "plugin_targets",
26
- "environment_exports",
27
- "write_safety_labels",
28
- ],
29
- diagnostics: ["check_names", "status_labels", "gap_labels", "primary_messages"],
30
- documentation_claims: ["reference_paths", "parity_claims", "install_claims", "known_drifts"],
31
- };
32
- const ALLOWED_FIELDS = Object.fromEntries(Object.entries(REQUIRED_FIELDS).map(([group, fields]) => [
33
- group,
34
- group === "subagent_dispatch" ? [...fields, "tool_configuration"] : fields,
35
- ]));
36
- const LIST_FIELDS = new Set([
37
- "binary_names",
38
- "host_config_locations",
39
- "supported_events",
40
- "unsupported_events",
41
- "validation_events",
42
- "hard_gate_claims",
43
- "payload_reconstruction_limitations",
44
- "setup_targets",
45
- "descriptor_sources",
46
- "limitations",
47
- "runtime_config_files",
48
- "hook_targets",
49
- "plugin_targets",
50
- "environment_exports",
51
- "write_safety_labels",
52
- "check_names",
53
- "status_labels",
54
- "gap_labels",
55
- "primary_messages",
56
- "reference_paths",
57
- "parity_claims",
58
- "install_claims",
59
- "known_drifts",
60
- ]);
61
- const STRING_FIELDS = new Set([
62
- "runtime_id",
63
- "display_name",
64
- "adapter_family",
65
- "support_status",
66
- "availability_probe_label",
67
- "mechanism",
68
- "invocation_pattern",
69
- "tool_configuration",
70
- ]);
71
- const MAP_FIELDS = new Set(["event_status"]);
72
- const SUPPORTED_EVENT_NAMES = new Set([
73
- "PreToolUse",
74
- "PostToolUse",
75
- "UserPromptSubmit",
76
- "SessionStart",
77
- "Stop",
78
- "SubagentStop",
79
- "PermissionRequest",
80
- "PreCompact",
81
- "Notification",
82
- "preToolUse",
83
- "postToolUse",
84
- "sessionStart",
85
- "sessionEnd",
86
- "userPromptSubmitted",
87
- "errorOccurred",
88
- "shell.env",
89
- "tool.execute.before",
90
- "tool.execute.after",
91
- "experimental.session.compacting",
92
- "session.created",
93
- "session.idle",
94
- "subagentStart",
95
- "subagentStop",
96
- "beforeSubmitPrompt",
97
- "beforeShellExecution",
98
- "afterShellExecution",
99
- "beforeMCPExecution",
100
- "afterMCPExecution",
101
- "beforeReadFile",
102
- "afterFileEdit",
103
- "preCompact",
104
- "stop",
105
- ]);
106
- export const RUNTIME_ADAPTER_CONSUMERS = ["lifecycle", "doctor", "upgrade", "docs", "tests"];
107
- const CONSUMER_GROUPS = {
108
- lifecycle: ["identity", "lifecycle_events", "artifact_validation", "subagent_dispatch", "documentation_claims"],
109
- doctor: ["identity", "host_detection", "config_targets", "diagnostics", "documentation_claims"],
110
- upgrade: ["identity", "host_detection", "subagent_dispatch", "config_targets", "diagnostics"],
111
- docs: REQUIRED_GROUPS,
112
- tests: REQUIRED_GROUPS,
113
- };
114
- const FORBIDDEN_OWNERSHIP_FIELDS = new Set([
115
- "package_metadata",
116
- "package_manifest",
117
- "package_manifest_schemas",
118
- "release_metadata",
119
- "shared_package_paths",
120
- "version_authority",
121
- "install_root",
122
- "install_root_classification",
123
- "AGENTERA_HOME_precedence",
124
- "default_durable_root",
125
- "managed_classification",
126
- "root_diagnostics",
127
- "ownership",
128
- ]);
129
- const RETIRED_OR_ALIAS_RUNTIME_IDS = new Set(["claude", "cursor-agent"]);
130
- export class RegistryError extends Error {
131
- constructor(message) {
132
- super(message);
133
- this.name = "RegistryError";
134
- }
135
- }
136
- function defaultRegistryPathValue() {
137
- return path.join(resolveSourceRoot(), "references/adapters/runtime-adapter-registry.yaml");
138
- }
139
- export function defaultRegistryPath() {
140
- return defaultRegistryPathValue();
141
- }
142
- function isMapping(value) {
143
- return value !== null && typeof value === "object" && !Array.isArray(value);
144
- }
145
- function isStringList(value) {
146
- return Array.isArray(value) && value.every((item) => typeof item === "string");
147
- }
148
- function isStringMap(value) {
149
- return (isMapping(value) &&
150
- Object.entries(value).every(([key, item]) => typeof key === "string" && typeof item === "string"));
151
- }
152
- export class RuntimeAdapterRegistry {
153
- records;
154
- constructor(records) {
155
- this.records = records;
156
- }
157
- get adapterIds() {
158
- return this.records.map((record) => record.identity.runtime_id); // cast: parsed registry IO data
159
- }
160
- get(runtimeId) {
161
- for (const record of this.records) {
162
- if (record.identity.runtime_id === runtimeId) { // cast: parsed registry IO data
163
- return record;
164
- }
165
- }
166
- throw new RegistryError(`unknown runtime id: ${runtimeId}`);
167
- }
168
- consumerView(consumer, runtimeId) {
169
- const groups = RUNTIME_ADAPTER_CONSUMERS.includes(consumer)
170
- ? CONSUMER_GROUPS[consumer]
171
- : undefined;
172
- if (groups === undefined) {
173
- throw new RegistryError(`unknown registry consumer: ${consumer}`);
174
- }
175
- const record = this.get(runtimeId);
176
- const view = {};
177
- for (const group of groups) {
178
- view[group] = record[group];
179
- }
180
- return view;
181
- }
182
- }
183
- export function loadRegistry(registryPath = defaultRegistryPathValue()) {
184
- const data = loadYamlMapping(fs.readFileSync(registryPath, "utf8"));
185
- const errors = validateRegistryData(data);
186
- if (errors.length > 0) {
187
- throw new RegistryError("RuntimeAdapter registry validation failed: " + errors.join("; "));
188
- }
189
- return new RuntimeAdapterRegistry(data.records); // cast: YAML parse IO boundary
190
- }
191
- export function validateRegistryFile(registryPath = defaultRegistryPathValue()) {
192
- return validateRegistryData(loadYamlMapping(fs.readFileSync(registryPath, "utf8")));
193
- }
194
- export function validateRegistryData(data) {
195
- const errors = [];
196
- if (!isMapping(data)) {
197
- return ["registry must be a YAML object"];
198
- }
199
- if (data.schema_version !== "agentera.runtimeAdapterRegistry.v1") {
200
- errors.push("registry.schema_version must be agentera.runtimeAdapterRegistry.v1");
201
- }
202
- if (data.lifecycle_authority !== "references/adapters/runtime-lifecycle-authority.yaml") {
203
- errors.push("registry.lifecycle_authority must point to references/adapters/runtime-lifecycle-authority.yaml");
204
- }
205
- const adapterOrder = data.adapter_record_order;
206
- if (!isStringList(adapterOrder) || adapterOrder.length === 0) {
207
- errors.push("registry.adapter_record_order must be a non-empty list of adapter record ids");
208
- }
209
- else if (new Set(adapterOrder).size !== adapterOrder.length) {
210
- errors.push("registry.adapter_record_order must not contain duplicate adapter record ids");
211
- }
212
- else if (adapterOrder.some((id) => RETIRED_OR_ALIAS_RUNTIME_IDS.has(id))) {
213
- errors.push("registry.adapter_record_order must contain active runtime records only");
214
- }
215
- const records = data.records;
216
- if (!Array.isArray(records)) {
217
- return [...errors, "registry.records must be a list"];
218
- }
219
- const seen = new Set();
220
- const ids = [];
221
- records.forEach((record, index) => {
222
- const prefix = `records[${index}]`;
223
- if (!isMapping(record)) {
224
- errors.push(`${prefix} must be an object`);
225
- return;
226
- }
227
- errors.push(...validateForbiddenFields(prefix, record));
228
- for (const group of REQUIRED_GROUPS) {
229
- if (!(group in record)) {
230
- errors.push(`${prefix}: missing required group ${group}`);
231
- }
232
- }
233
- for (const group of Object.keys(record)) {
234
- if (!REQUIRED_GROUPS.includes(group)) {
235
- errors.push(`${prefix}: unknown group ${group}`);
236
- }
237
- }
238
- for (const group of REQUIRED_GROUPS) {
239
- const groupValue = record[group];
240
- if (isMapping(groupValue)) {
241
- errors.push(...validateGroup(`${prefix}.${group}`, group, groupValue));
242
- }
243
- else if (group in record) {
244
- errors.push(`${prefix}.${group} must be an object`);
245
- }
246
- }
247
- const identity = record.identity;
248
- const runtimeId = isMapping(identity) ? identity.runtime_id : null;
249
- if (typeof runtimeId !== "string") {
250
- return;
251
- }
252
- ids.push(runtimeId);
253
- if (RETIRED_OR_ALIAS_RUNTIME_IDS.has(runtimeId)) {
254
- errors.push(`${prefix}.identity.runtime_id cannot be an active adapter record: ${runtimeId}`);
255
- }
256
- if (Array.isArray(adapterOrder) && !adapterOrder.includes(runtimeId)) {
257
- errors.push(`${prefix}.identity.runtime_id unknown adapter record id: ${runtimeId}`);
258
- }
259
- if (seen.has(runtimeId)) {
260
- errors.push(`duplicate runtime id: ${runtimeId}`);
261
- }
262
- seen.add(runtimeId);
263
- });
264
- if (JSON.stringify(ids) !== JSON.stringify(adapterOrder)) {
265
- errors.push("registry.records must follow registry.adapter_record_order");
266
- }
267
- return errors;
268
- }
269
- function validateGroup(prefix, group, value) {
270
- const errors = [];
271
- errors.push(...validateForbiddenFields(prefix, value));
272
- for (const field of REQUIRED_FIELDS[group]) {
273
- if (!(field in value)) {
274
- errors.push(`${prefix}: missing required field ${field}`);
275
- }
276
- }
277
- for (const [field, fieldValue] of Object.entries(value)) {
278
- if (!ALLOWED_FIELDS[group].includes(field)) {
279
- errors.push(`${prefix}: unknown field ${field}`);
280
- continue;
281
- }
282
- if (STRING_FIELDS.has(field) && typeof fieldValue !== "string") {
283
- errors.push(`${prefix}.${field} must be a string`);
284
- }
285
- else if (LIST_FIELDS.has(field) && !isStringList(fieldValue)) {
286
- errors.push(`${prefix}.${field} must be a list of strings`);
287
- }
288
- else if (MAP_FIELDS.has(field) && !isStringMap(fieldValue)) {
289
- errors.push(`${prefix}.${field} must be a string map`);
290
- }
291
- }
292
- errors.push(...validateEventNames(prefix, value));
293
- return errors;
294
- }
295
- function validateEventNames(prefix, value) {
296
- const errors = [];
297
- for (const field of ["supported_events", "unsupported_events", "validation_events"]) {
298
- const events = value[field];
299
- if (!Array.isArray(events)) {
300
- continue;
301
- }
302
- for (const event of events) {
303
- if (typeof event !== "string" || !SUPPORTED_EVENT_NAMES.has(event)) {
304
- errors.push(`${prefix}.${field}: unsupported event name ${event}`);
305
- }
306
- }
307
- }
308
- const eventStatus = value.event_status;
309
- if (isMapping(eventStatus)) {
310
- for (const event of Object.keys(eventStatus)) {
311
- if (!SUPPORTED_EVENT_NAMES.has(event)) {
312
- errors.push(`${prefix}.event_status: unsupported event name ${event}`);
313
- }
314
- }
315
- }
316
- return errors;
317
- }
318
- function validateForbiddenFields(prefix, value) {
319
- return Object.keys(value)
320
- .sort()
321
- .filter((field) => FORBIDDEN_OWNERSHIP_FIELDS.has(field))
322
- .map((field) => `${prefix}: forbidden ownership field ${field}`);
323
- }
324
- //# sourceMappingURL=runtimeAdapterRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtimeAdapterRegistry.js","sourceRoot":"","sources":["../../src/registries/runtimeAdapterRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,4DAA4D;AAE5D,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU;IACV,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,gBAAgB;IAChB,aAAa;IACb,sBAAsB;CACd,CAAC;AAEX,MAAM,eAAe,GAA6B;IAChD,QAAQ,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;IAC5E,cAAc,EAAE,CAAC,cAAc,EAAE,uBAAuB,EAAE,0BAA0B,CAAC;IACrF,gBAAgB,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,cAAc,EAAE,aAAa,CAAC;IAC3F,mBAAmB,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,oCAAoC,CAAC;IACpG,iBAAiB,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,aAAa,CAAC;IAC5G,cAAc,EAAE;QACd,sBAAsB;QACtB,cAAc;QACd,gBAAgB;QAChB,qBAAqB;QACrB,qBAAqB;KACtB;IACD,WAAW,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,CAAC;IAC/E,oBAAoB,EAAE,CAAC,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,CAAC;CAC7F,CAAC;AAEF,MAAM,cAAc,GAA6B,MAAM,CAAC,WAAW,CACjE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;IACvD,KAAK;IACL,KAAK,KAAK,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM;CAC3E,CAAC,CACH,CAAC;AAEF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,cAAc;IACd,uBAAuB;IACvB,kBAAkB;IAClB,oBAAoB;IACpB,mBAAmB;IACnB,kBAAkB;IAClB,oCAAoC;IACpC,eAAe;IACf,oBAAoB;IACpB,aAAa;IACb,sBAAsB;IACtB,cAAc;IACd,gBAAgB;IAChB,qBAAqB;IACrB,qBAAqB;IACrB,aAAa;IACb,eAAe;IACf,YAAY;IACZ,kBAAkB;IAClB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,YAAY;IACZ,cAAc;IACd,gBAAgB;IAChB,gBAAgB;IAChB,0BAA0B;IAC1B,WAAW;IACX,oBAAoB;IACpB,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AAE7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,YAAY;IACZ,aAAa;IACb,kBAAkB;IAClB,cAAc;IACd,MAAM;IACN,cAAc;IACd,mBAAmB;IACnB,YAAY;IACZ,cAAc;IACd,YAAY;IACZ,aAAa;IACb,cAAc;IACd,YAAY;IACZ,qBAAqB;IACrB,eAAe;IACf,WAAW;IACX,qBAAqB;IACrB,oBAAoB;IACpB,iCAAiC;IACjC,iBAAiB;IACjB,cAAc;IACd,eAAe;IACf,cAAc;IACd,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;IACnB,gBAAgB;IAChB,eAAe;IACf,YAAY;IACZ,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAEtG,MAAM,eAAe,GAA0E;IAC7F,SAAS,EAAE,CAAC,UAAU,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,CAAC;IAC/G,MAAM,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,sBAAsB,CAAC;IAC/F,OAAO,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,CAAC;IAC7F,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,eAAe;CACvB,CAAC;AAEF,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IACzC,kBAAkB;IAClB,kBAAkB;IAClB,0BAA0B;IAC1B,kBAAkB;IAClB,sBAAsB;IACtB,mBAAmB;IACnB,cAAc;IACd,6BAA6B;IAC7B,0BAA0B;IAC1B,sBAAsB;IACtB,wBAAwB;IACxB,kBAAkB;IAClB,WAAW;CACZ,CAAC,CAAC;AACH,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;AAEzE,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAED,SAAS,wBAAwB;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,mDAAmD,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,wBAAwB,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,CACL,SAAS,CAAC,KAAK,CAAC;QAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAClG,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,sBAAsB;IACjC,OAAO,CAAe;IAEtB,YAAY,OAAqB;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAE,MAAM,CAAC,QAAuB,CAAC,UAAoB,CAAC,CAAC,CAAC,gCAAgC;IAC7H,CAAC;IAED,GAAG,CAAC,SAAiB;QACnB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAM,MAAM,CAAC,QAAuB,CAAC,UAAqB,KAAK,SAAS,EAAE,CAAC,CAAC,gCAAgC;gBAC1G,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QACD,MAAM,IAAI,aAAa,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,QAAgB,EAAE,SAAiB;QAC9C,MAAM,MAAM,GAAI,yBAA+C,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAChF,CAAC,CAAC,eAAe,CAAC,QAAsD,CAAC;YACzE,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,aAAa,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,IAAI,GAAe,EAAE,CAAC;QAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAC,eAAuB,wBAAwB,EAAE;IAC5E,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,aAAa,CAAC,6CAA6C,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,IAAI,sBAAsB,CAAE,IAAmB,CAAC,OAAuB,CAAC,CAAC,CAAC,+BAA+B;AAClH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,eAAuB,wBAAwB,EAAE;IACpF,OAAO,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAa;IAChD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,cAAc,KAAK,oCAAoC,EAAE,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;IACpF,CAAC;IAED,IAAI,IAAI,CAAC,mBAAmB,KAAK,sDAAsD,EAAE,CAAC;QACxF,MAAM,CAAC,IAAI,CACT,iGAAiG,CAClG,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC;IAC/C,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;IAC9F,CAAC;SAAM,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;IAC7F,CAAC;SAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,MAAM,EAAE,iCAAiC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,WAAW,KAAK,GAAG,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,oBAAoB,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,4BAA4B,KAAK,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACxC,IAAI,CAAE,eAAqC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mBAAmB,KAAK,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,KAAK,oBAAoB,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpB,IAAI,4BAA4B,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,4DAA4D,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mDAAmD,SAAS,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,MAAc,EAAE,KAAa,EAAE,KAAiB;IACrE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACvD,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,4BAA4B,KAAK,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mBAAmB,KAAK,EAAE,CAAC,CAAC;YACjD,SAAS;QACX,CAAC;QACD,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,KAAK,mBAAmB,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,KAAK,4BAA4B,CAAC,CAAC;QAC9D,CAAC;aAAM,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,KAAK,uBAAuB,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc,EAAE,KAAiB;IAC3D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,CAAC,EAAE,CAAC;QACpF,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,KAAK,4BAA4B,KAAK,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC;IACvC,IAAI,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,yCAAyC,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAc,EAAE,KAAiB;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;SACtB,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACxD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,MAAM,+BAA+B,KAAK,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -1,227 +0,0 @@
1
- import fs from "node:fs";
2
- import os from "node:os";
3
- import path from "node:path";
4
- import { pathExists, resolvePath } from "../core/paths.js";
5
- import { SETUP_EVIDENCE, classifyResolvedRoot } from "../state/installRoot.js";
6
- export const CANONICAL_ENTRIES = SETUP_EVIDENCE;
7
- export const MANAGED_KEY = "AGENTERA_HOME";
8
- export const MARKER_COMMENT = `# agentera: ${MANAGED_KEY} (managed)`;
9
- const ENV_FALLBACKS = ["AGENTERA_HOME"];
10
- const SHELL_TABLE = {
11
- bash: ["bashrc", "export"],
12
- zsh: ["zshrc", "export"],
13
- fish: ["fish", "fish"],
14
- };
15
- export class InstallRootError extends Error {
16
- constructor(message) {
17
- super(message);
18
- this.name = "InstallRootError";
19
- }
20
- }
21
- export class UnsupportedShellError extends Error {
22
- shellName;
23
- constructor(shellName) {
24
- super(shellName);
25
- this.name = "UnsupportedShellError";
26
- this.shellName = shellName;
27
- }
28
- }
29
- export function verifyInstallRoot(root) {
30
- const classification = classifyResolvedRoot(root, { source: "explicit" });
31
- if (classification.kind === "managed_fresh") {
32
- return [];
33
- }
34
- return SETUP_EVIDENCE.filter((entry) => !pathExists(path.join(root, entry)));
35
- }
36
- export function autoDetectInstallRoot(start = null, env = process.env) {
37
- for (const variable of ENV_FALLBACKS) {
38
- const candidate = env[variable];
39
- if (candidate) {
40
- const p = resolvePath(candidate);
41
- if (verifyInstallRoot(p).length === 0) {
42
- return p;
43
- }
44
- }
45
- }
46
- let current = resolvePath(start === null ? process.cwd() : start);
47
- for (;;) {
48
- if (verifyInstallRoot(current).length === 0) {
49
- return current;
50
- }
51
- const parent = path.dirname(current);
52
- if (parent === current) {
53
- return null;
54
- }
55
- current = parent;
56
- }
57
- }
58
- export function resolveInstallRoot(explicit, env = process.env) {
59
- if (explicit !== null && explicit !== undefined) {
60
- const root = resolvePath(explicit);
61
- if (classifyResolvedRoot(root, { source: "explicit" }).kind !== "managed_fresh") {
62
- const missing = verifyInstallRoot(root);
63
- throw new InstallRootError(`--install-root ${root} is not a valid Agentera directory: ` +
64
- `missing canonical entries: ${missing.join(", ")}`);
65
- }
66
- return root;
67
- }
68
- const detected = autoDetectInstallRoot(null, env);
69
- if (detected === null) {
70
- throw new InstallRootError("could not auto-detect the Agentera directory. " +
71
- "Pass --install-root PATH where PATH contains " +
72
- `${CANONICAL_ENTRIES.join(", ")}.`);
73
- }
74
- return detected;
75
- }
76
- function rcPathFor(kind, home) {
77
- if (kind === "bashrc")
78
- return path.join(home, ".bashrc");
79
- if (kind === "zshrc")
80
- return path.join(home, ".zshrc");
81
- return path.join(home, ".config", "fish", "config.fish");
82
- }
83
- export function detectShell(env, home) {
84
- const shellPath = env.SHELL ?? "";
85
- const basename = shellPath ? path.basename(shellPath) : "";
86
- if (basename in SHELL_TABLE) {
87
- const [rcKind, syntax] = SHELL_TABLE[basename];
88
- return { name: basename, rcPath: rcPathFor(rcKind, home), syntax };
89
- }
90
- throw new UnsupportedShellError(basename || "(unset $SHELL)");
91
- }
92
- export function resolveRcTarget(explicitRc, env, home) {
93
- if (explicitRc !== null && explicitRc !== undefined) {
94
- const rcPath = resolvePath(explicitRc);
95
- const parts = rcPath.split(/[\\/]/);
96
- const syntax = rcPath.endsWith(".fish") || parts.includes("fish") ? "fish" : "export";
97
- return { name: "custom", rcPath, syntax };
98
- }
99
- return detectShell(env, home);
100
- }
101
- function quoteForShell(value) {
102
- const escaped = value.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
103
- return `"${escaped}"`;
104
- }
105
- export function classifyRc(text) {
106
- if (!text) {
107
- return { markerPresent: false, markerIdx: -1, exportAfterMarker: "", bareExportPresent: false };
108
- }
109
- const lines = text.split(/\r\n|\r|\n/);
110
- // Python splitlines() drops a trailing empty produced by a final newline.
111
- if (lines.length > 0 && lines[lines.length - 1] === "" && /[\r\n]$/.test(text)) {
112
- lines.pop();
113
- }
114
- let markerIdx = -1;
115
- for (let i = 0; i < lines.length; i++) {
116
- if (lines[i].replace(/\s+$/, "") === MARKER_COMMENT) {
117
- markerIdx = i;
118
- break;
119
- }
120
- }
121
- if (markerIdx === -1) {
122
- return { markerPresent: false, markerIdx: -1, exportAfterMarker: "", bareExportPresent: false };
123
- }
124
- let exportAfter = "";
125
- if (markerIdx + 1 < lines.length) {
126
- exportAfter = lines[markerIdx + 1].replace(/\s+$/, "");
127
- }
128
- const managed = new Set([markerIdx, markerIdx + 1]);
129
- const bare = lines.some((line, idx) => !managed.has(idx) && line.includes(MANAGED_KEY));
130
- return { markerPresent: true, markerIdx, exportAfterMarker: exportAfter, bareExportPresent: bare };
131
- }
132
- export function planChange(currentText, installRoot) {
133
- const unchanged = currentText ?? "";
134
- const guidance = "Copilot app context is diagnostic-only: Agentera will not edit shell " +
135
- "startup files. For a single command, run " +
136
- `${MANAGED_KEY}=${quoteForShell(installRoot)} copilot ...`;
137
- if (currentText === null || currentText === "") {
138
- return {
139
- action: "noop",
140
- newText: unchanged,
141
- message: guidance,
142
- diff: "",
143
- notice: "No shell startup file was found or needed; no persistent shell startup change was made.",
144
- };
145
- }
146
- const state = classifyRc(currentText);
147
- let notice = "No Agentera shell startup line was detected; no persistent shell startup change was made.";
148
- if (state.markerPresent) {
149
- notice =
150
- "Legacy Agentera shell startup line detected. Agentera will not edit it; " +
151
- "cleanup is a user-owned manual boundary.";
152
- }
153
- return { action: "noop", newText: unchanged, message: guidance, diff: "", notice };
154
- }
155
- function readTextOrNull(p) {
156
- if (!pathExists(p)) {
157
- return null;
158
- }
159
- return fs.readFileSync(p, "utf8");
160
- }
161
- function parseArgs(argv) {
162
- const parsed = { installRoot: null, rcFile: null, dryRun: false };
163
- for (let i = 0; i < argv.length; i++) {
164
- const arg = argv[i];
165
- if (arg === "--install-root") {
166
- parsed.installRoot = argv[++i];
167
- }
168
- else if (arg === "--rc-file") {
169
- parsed.rcFile = argv[++i];
170
- }
171
- else if (arg === "--dry-run") {
172
- parsed.dryRun = true;
173
- }
174
- }
175
- return parsed;
176
- }
177
- function printUnsupportedGuidance(shellName, err) {
178
- err(`unsupported shell: ${shellName}`);
179
- err("Agentera will not edit shell startup files. Pass app context per invocation instead:");
180
- err(` ${MANAGED_KEY}=<agentera-directory> copilot ...`);
181
- err("If you choose to clean up an old rc line, that edit is manual and user-owned.");
182
- }
183
- export function main(argv = [], opts = {}) {
184
- const env = opts.env ?? process.env;
185
- const out = opts.out ?? ((line) => process.stdout.write(line + "\n"));
186
- const err = opts.err ?? ((line) => process.stderr.write(line + "\n"));
187
- const home = env.HOME ?? os.homedir();
188
- const args = parseArgs(argv);
189
- let installRoot;
190
- try {
191
- installRoot = resolveInstallRoot(args.installRoot, env);
192
- }
193
- catch (exc) {
194
- if (exc instanceof InstallRootError) {
195
- err(exc.message);
196
- return 2;
197
- }
198
- throw exc;
199
- }
200
- let target;
201
- try {
202
- target = resolveRcTarget(args.rcFile, env, home);
203
- }
204
- catch (exc) {
205
- if (exc instanceof UnsupportedShellError) {
206
- printUnsupportedGuidance(exc.shellName, err);
207
- return 0;
208
- }
209
- throw exc;
210
- }
211
- out(`target: ${target.rcPath} (shell=${target.name}, syntax=${target.syntax})`);
212
- let currentText;
213
- try {
214
- currentText = readTextOrNull(target.rcPath);
215
- }
216
- catch (exc) {
217
- err(`error reading ${target.rcPath}: ${exc.message}`);
218
- return 2;
219
- }
220
- const outcome = planChange(currentText, installRoot);
221
- out(outcome.message);
222
- if (outcome.notice) {
223
- out(outcome.notice);
224
- }
225
- return 0;
226
- }
227
- //# sourceMappingURL=copilot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../src/setup/copilot.ts"],"names":[],"mappings":"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"}