agentera 3.0.0-dev.32 → 3.0.0-dev.39

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/bundle/CHANGELOG.md +75 -5
  2. package/bundle/references/adapters/package-publication.json +43 -0
  3. package/bundle/references/adapters/package-surface-characterization.md +12 -0
  4. package/bundle/references/analysis/evidence-tier-authority.yaml +23 -21
  5. package/bundle/references/analysis/verification-policy.yaml +1 -0
  6. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +11 -2
  7. package/bundle/references/artifacts/glossary-entry-contract.yaml +1241 -0
  8. package/bundle/references/artifacts/state-storage-authority.yaml +149 -80
  9. package/bundle/references/cli/agent-ready-state-contract.yaml +84 -2
  10. package/bundle/references/cli/audience-namespace-cli-migration.yaml +12 -1
  11. package/bundle/references/cli/prime-consumer-compatibility.yaml +7 -1
  12. package/bundle/skills/agentera/SKILL.md +26 -26
  13. package/bundle/skills/agentera/capabilities/audit/schemas/validation.yaml +26 -8
  14. package/bundle/skills/agentera/capabilities/build/schemas/artifacts.yaml +21 -4
  15. package/bundle/skills/agentera/capabilities/build/schemas/exit.yaml +5 -4
  16. package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +67 -3
  17. package/bundle/skills/agentera/capabilities/discuss/schemas/artifacts.yaml +3 -2
  18. package/bundle/skills/agentera/capabilities/discuss/schemas/validation.yaml +64 -0
  19. package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +4 -1
  20. package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +30 -0
  21. package/bundle/skills/agentera/capabilities/profile/schemas/artifacts.yaml +5 -2
  22. package/bundle/skills/agentera/capabilities/profile/schemas/exit.yaml +3 -2
  23. package/bundle/skills/agentera/capabilities/profile/schemas/validation.yaml +30 -0
  24. package/bundle/skills/agentera/schemas/artifacts/glossary.yaml +82 -0
  25. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +19 -4
  26. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +92 -0
  27. package/dist/analytics/extractCorpus/evidenceTiers.js +46 -3
  28. package/dist/analytics/extractCorpus/evidenceTiers.js.map +1 -1
  29. package/dist/analytics/extractCorpus/tierReader.js +1 -1
  30. package/dist/analytics/extractCorpus/tierReader.js.map +1 -1
  31. package/dist/analytics/glossaryAdviceResolution.js +167 -0
  32. package/dist/analytics/glossaryAdviceResolution.js.map +1 -0
  33. package/dist/analytics/glossaryInputAcquisition.js +320 -0
  34. package/dist/analytics/glossaryInputAcquisition.js.map +1 -0
  35. package/dist/analytics/personalGlossaryAdmission.js +134 -0
  36. package/dist/analytics/personalGlossaryAdmission.js.map +1 -0
  37. package/dist/analytics/personalGlossaryProfile.js +219 -0
  38. package/dist/analytics/personalGlossaryProfile.js.map +1 -0
  39. package/dist/audit/terminologyDrift.js +282 -0
  40. package/dist/audit/terminologyDrift.js.map +1 -0
  41. package/dist/capabilities/audit/instructions.js +2 -1
  42. package/dist/capabilities/audit/instructions.js.map +1 -1
  43. package/dist/capabilities/build/instructions.js +41 -2
  44. package/dist/capabilities/build/instructions.js.map +1 -1
  45. package/dist/capabilities/discuss/instructions.js +14 -1
  46. package/dist/capabilities/discuss/instructions.js.map +1 -1
  47. package/dist/capabilities/index.js +1 -1
  48. package/dist/capabilities/index.js.map +1 -1
  49. package/dist/capabilities/orchestrate/instructions.js +2 -2
  50. package/dist/capabilities/plan/instructions.js +19 -2
  51. package/dist/capabilities/plan/instructions.js.map +1 -1
  52. package/dist/capabilities/profile/instructions.js +67 -1
  53. package/dist/capabilities/profile/instructions.js.map +1 -1
  54. package/dist/cli/capabilityContext/bespoke.js +4 -3
  55. package/dist/cli/capabilityContext/bespoke.js.map +1 -1
  56. package/dist/cli/capabilityContext/build.js +77 -24
  57. package/dist/cli/capabilityContext/build.js.map +1 -1
  58. package/dist/cli/capabilityContext/closeout.js +2 -2
  59. package/dist/cli/capabilityContext/closeout.js.map +1 -1
  60. package/dist/cli/capabilityContext/evidence.js +2 -6
  61. package/dist/cli/capabilityContext/evidence.js.map +1 -1
  62. package/dist/cli/capabilityContext/planState.js +59 -78
  63. package/dist/cli/capabilityContext/planState.js.map +1 -1
  64. package/dist/cli/capabilityContext/projectVerification.js +410 -0
  65. package/dist/cli/capabilityContext/projectVerification.js.map +1 -0
  66. package/dist/cli/capabilityContext/startup.js +21 -4
  67. package/dist/cli/capabilityContext/startup.js.map +1 -1
  68. package/dist/cli/commands/glossaryAdvice.js +139 -0
  69. package/dist/cli/commands/glossaryAdvice.js.map +1 -0
  70. package/dist/cli/commands/personalGlossary.js +177 -0
  71. package/dist/cli/commands/personalGlossary.js.map +1 -0
  72. package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
  73. package/dist/cli/commands/prime/buildExecutionRequest.js.map +1 -0
  74. package/dist/cli/commands/prime/collectEntityOrientation.js +18 -2
  75. package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -1
  76. package/dist/cli/commands/prime/collectOrientationState.js +7 -1
  77. package/dist/cli/commands/prime/collectOrientationState.js.map +1 -1
  78. package/dist/cli/commands/prime/orientationOutput.js +12 -2
  79. package/dist/cli/commands/prime/orientationOutput.js.map +1 -1
  80. package/dist/cli/commands/prime.js +37 -2
  81. package/dist/cli/commands/prime.js.map +1 -1
  82. package/dist/cli/commands/profileGrounding.js +77 -0
  83. package/dist/cli/commands/profileGrounding.js.map +1 -0
  84. package/dist/cli/commands/query.js +14 -4
  85. package/dist/cli/commands/query.js.map +1 -1
  86. package/dist/cli/commands/schema.js +10 -0
  87. package/dist/cli/commands/schema.js.map +1 -1
  88. package/dist/cli/commands/state/write.js +4 -1
  89. package/dist/cli/commands/state/write.js.map +1 -1
  90. package/dist/cli/dispatch/lifecycle.js +45 -0
  91. package/dist/cli/dispatch/lifecycle.js.map +1 -1
  92. package/dist/cli/dispatch/prime.js +22 -1
  93. package/dist/cli/dispatch/prime.js.map +1 -1
  94. package/dist/cli/dispatch/shared.js +1 -1
  95. package/dist/cli/dispatch/shared.js.map +1 -1
  96. package/dist/cli/help.js +23 -1
  97. package/dist/cli/help.js.map +1 -1
  98. package/dist/cli/migrationRequired.js +2 -0
  99. package/dist/cli/migrationRequired.js.map +1 -1
  100. package/dist/cli/orientation/attention.js +3 -1
  101. package/dist/cli/orientation/attention.js.map +1 -1
  102. package/dist/cli/orientation.js +2 -2
  103. package/dist/cli/orientation.js.map +1 -1
  104. package/dist/registries/artifactProtocolIds.js +2 -0
  105. package/dist/registries/artifactProtocolIds.js.map +1 -1
  106. package/dist/registries/artifactRegistry.js +2 -0
  107. package/dist/registries/artifactRegistry.js.map +1 -1
  108. package/dist/registries/evidenceTierContract.js +26 -16
  109. package/dist/registries/evidenceTierContract.js.map +1 -1
  110. package/dist/registries/glossaryAdviceContract.js +79 -0
  111. package/dist/registries/glossaryAdviceContract.js.map +1 -0
  112. package/dist/registries/glossaryCaveatContract.js +68 -0
  113. package/dist/registries/glossaryCaveatContract.js.map +1 -0
  114. package/dist/registries/glossaryConsumerContractValidation.js +792 -0
  115. package/dist/registries/glossaryConsumerContractValidation.js.map +1 -0
  116. package/dist/registries/glossaryEntryContract.js +747 -0
  117. package/dist/registries/glossaryEntryContract.js.map +1 -0
  118. package/dist/registries/glossaryTermIdentity.js +18 -0
  119. package/dist/registries/glossaryTermIdentity.js.map +1 -0
  120. package/dist/registries/glossaryTermOccurrence.js +21 -0
  121. package/dist/registries/glossaryTermOccurrence.js.map +1 -0
  122. package/dist/state/changelog.js +222 -0
  123. package/dist/state/changelog.js.map +1 -0
  124. package/dist/state/decisionEntities.js +18 -11
  125. package/dist/state/decisionEntities.js.map +1 -1
  126. package/dist/state/decisionMigrationProvenance.js +84 -1
  127. package/dist/state/decisionMigrationProvenance.js.map +1 -1
  128. package/dist/state/decisionOverlay.js +9 -32
  129. package/dist/state/decisionOverlay.js.map +1 -1
  130. package/dist/state/decisionRevision.js +69 -444
  131. package/dist/state/decisionRevision.js.map +1 -1
  132. package/dist/state/decisionRevisionMigration.js +90 -0
  133. package/dist/state/decisionRevisionMigration.js.map +1 -0
  134. package/dist/state/directRetrieval.js +3 -52
  135. package/dist/state/directRetrieval.js.map +1 -1
  136. package/dist/state/entityCutover.js +6 -6
  137. package/dist/state/entityCutover.js.map +1 -1
  138. package/dist/state/entityGlossaryAuthority.js +14 -0
  139. package/dist/state/entityGlossaryAuthority.js.map +1 -0
  140. package/dist/state/entityMigrationIdentity.js +6 -0
  141. package/dist/state/entityMigrationIdentity.js.map +1 -0
  142. package/dist/state/entityMigrationPreview.js +14 -23
  143. package/dist/state/entityMigrationPreview.js.map +1 -1
  144. package/dist/state/entityPublicationContext.js +374 -71
  145. package/dist/state/entityPublicationContext.js.map +1 -1
  146. package/dist/state/entityStorage.js +45 -29
  147. package/dist/state/entityStorage.js.map +1 -1
  148. package/dist/state/healthEntities.js +2 -4
  149. package/dist/state/healthEntities.js.map +1 -1
  150. package/dist/state/listRetrieval.js +7 -38
  151. package/dist/state/listRetrieval.js.map +1 -1
  152. package/dist/state/migrationSourceBinding.js +1 -1
  153. package/dist/state/migrationSourceBinding.js.map +1 -1
  154. package/dist/state/objectiveExperimentEntities.js +9 -9
  155. package/dist/state/objectiveExperimentEntities.js.map +1 -1
  156. package/dist/state/planEntities.js +57 -16
  157. package/dist/state/planEntities.js.map +1 -1
  158. package/dist/state/progressEntities.js +177 -39
  159. package/dist/state/progressEntities.js.map +1 -1
  160. package/dist/state/progressGlossaryCaveat.js +169 -0
  161. package/dist/state/progressGlossaryCaveat.js.map +1 -0
  162. package/dist/state/progressPublicationOrder.js +20 -0
  163. package/dist/state/progressPublicationOrder.js.map +1 -0
  164. package/dist/state/safeProjectFile.js +4 -1
  165. package/dist/state/safeProjectFile.js.map +1 -1
  166. package/dist/state/startupProjection.js +2 -70
  167. package/dist/state/startupProjection.js.map +1 -1
  168. package/dist/state/stateStorageAuthority.js +48 -0
  169. package/dist/state/stateStorageAuthority.js.map +1 -0
  170. package/dist/state/summarySourceRowAuthority.js +1 -1
  171. package/dist/state/summarySourceRowAuthority.js.map +1 -1
  172. package/dist/state/todoDocsEntities.js +8 -9
  173. package/dist/state/todoDocsEntities.js.map +1 -1
  174. package/dist/state/write/explain.js +101 -92
  175. package/dist/state/write/explain.js.map +1 -1
  176. package/dist/state/write/glossaryPublication.js +264 -0
  177. package/dist/state/write/glossaryPublication.js.map +1 -0
  178. package/dist/state/write/index.js +1 -0
  179. package/dist/state/write/index.js.map +1 -1
  180. package/dist/state/write/operations.js +25 -27
  181. package/dist/state/write/operations.js.map +1 -1
  182. package/dist/state/write/planEvaluation.js +6 -2
  183. package/dist/state/write/planEvaluation.js.map +1 -1
  184. package/dist/state/write/transaction.js +7 -4
  185. package/dist/state/write/transaction.js.map +1 -1
  186. package/dist/upgrade/upgradeOrchestrator.js +15 -10
  187. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  188. package/dist/validate/crossCapability.js +3 -0
  189. package/dist/validate/crossCapability.js.map +1 -1
  190. package/dist/validate/v1LegacyCruft.js +141 -0
  191. package/dist/validate/v1LegacyCruft.js.map +1 -0
  192. package/dist/validate/vocabularyAuthority.js +2 -0
  193. package/dist/validate/vocabularyAuthority.js.map +1 -1
  194. package/package.json +4 -3
  195. package/dist/state/decisionRevisionPublication.js +0 -532
  196. package/dist/state/decisionRevisionPublication.js.map +0 -1
@@ -0,0 +1,264 @@
1
+ import crypto from "node:crypto";
2
+ import fs from "node:fs";
3
+ import path from "node:path";
4
+ import { canonicalTerminologyJson, validateTerminologyProposal, } from "../../audit/terminologyDrift.js";
5
+ import { dumpYamlMapping, loadYamlMapping } from "../../core/yaml.js";
6
+ import { loadArtifactRecord, resolveArtifactPath, } from "../../registries/artifactRegistry.js";
7
+ import { GlossaryEntryBoundError, validateGlossaryEntry } from "../../registries/glossaryEntryContract.js";
8
+ import { unicodeCaselessExact } from "../../registries/glossaryTermIdentity.js";
9
+ import { containsGlossaryTerm } from "../../registries/glossaryTermOccurrence.js";
10
+ import { assertValidatedProjectRoot } from "../projectRoot.js";
11
+ import { reject } from "./errors.js";
12
+ import { withStateMutation } from "./mutation.js";
13
+ const REQUEST_VERSION = "agentera.glossaryPublicationRequest.v1";
14
+ const DOCUMENT_VERSION = "agentera.projectGlossary.v1";
15
+ const REQUEST_FIELDS = ["schema_version", "proposal", "confirmation"];
16
+ function mapping(value) {
17
+ return value !== null && typeof value === "object" && !Array.isArray(value);
18
+ }
19
+ function exactFields(value, allowed) {
20
+ return Object.keys(value).every((field) => allowed.includes(field));
21
+ }
22
+ function validTimestamp(value) {
23
+ if (typeof value !== "string")
24
+ return false;
25
+ const match = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.\d+)?(?:Z|[+-](\d{2}):(\d{2}))$/.exec(value);
26
+ if (!match || Number.isNaN(Date.parse(value)))
27
+ return false;
28
+ const [, year, month, day, hour, minute, second, offsetHour = "00", offsetMinute = "00"] = match;
29
+ const calendar = new Date(Date.UTC(Number(year), Number(month) - 1, Number(day)));
30
+ return calendar.getUTCFullYear() === Number(year)
31
+ && calendar.getUTCMonth() + 1 === Number(month)
32
+ && calendar.getUTCDate() === Number(day)
33
+ && Number(hour) <= 23
34
+ && Number(minute) <= 59
35
+ && Number(second) <= 59
36
+ && Number(offsetHour) <= 23
37
+ && Number(offsetMinute) <= 59;
38
+ }
39
+ function correction(message, classification = "schema_violation", recovery = "Rerun audit against current project files, obtain explicit user confirmation for the returned proposal_digest, and retry the same glossary publish command.") {
40
+ reject({
41
+ class: classification,
42
+ message,
43
+ recovery,
44
+ example: "agentera state glossary publish --input glossary-publication.yaml --format json",
45
+ });
46
+ }
47
+ function proposal(value) {
48
+ const validated = validateTerminologyProposal(value);
49
+ if (!validated.proposal) {
50
+ correction(`proposal is not canonical Audit output: ${validated.violations.join("; ")}`);
51
+ }
52
+ return validated.proposal;
53
+ }
54
+ function confirmation(value, digest) {
55
+ if (!mapping(value) || !exactFields(value, ["proposal_digest", "confirmed_by", "confirmed_at"])) {
56
+ correction("confirmation must contain only proposal_digest, confirmed_by, and confirmed_at");
57
+ }
58
+ if (value.confirmed_by !== "user") {
59
+ correction("confirmation.confirmed_by must be 'user'; generic consent or agent attribution is not approval");
60
+ }
61
+ if (!validTimestamp(value.confirmed_at)) {
62
+ correction("confirmation.confirmed_at must be a valid ISO 8601 timestamp with timezone");
63
+ }
64
+ if (value.proposal_digest !== digest) {
65
+ correction("confirmation.proposal_digest does not bind the submitted proposal");
66
+ }
67
+ return value;
68
+ }
69
+ function revalidateEvidence(root, proposalValue) {
70
+ const groups = [
71
+ { term: proposalValue.proposed_canonical_term, evidence: proposalValue.canonical_evidence },
72
+ ...proposalValue.variants,
73
+ ];
74
+ for (const group of groups) {
75
+ for (const record of group.evidence) {
76
+ assertValidatedProjectRoot(root);
77
+ const candidate = path.resolve(root.path, record.source_path);
78
+ let resolved;
79
+ try {
80
+ resolved = fs.realpathSync(candidate);
81
+ }
82
+ catch {
83
+ correction(`source evidence '${record.source_path}:${record.line}' is missing or unreadable`);
84
+ }
85
+ if (!resolved.startsWith(`${root.path}${path.sep}`) || !fs.statSync(resolved).isFile()) {
86
+ correction(`source evidence '${record.source_path}:${record.line}' escapes the project or is not a file`);
87
+ }
88
+ const canonicalPath = path.relative(root.path, resolved).split(path.sep).join(path.posix.sep);
89
+ if (canonicalPath !== record.source_path) {
90
+ correction(`source evidence '${record.source_path}:${record.line}' is not the canonical Audit-emitted project identity '${canonicalPath}:${record.line}'`);
91
+ }
92
+ const line = fs.readFileSync(resolved, "utf8").split(/\r?\n/)[record.line - 1];
93
+ const digest = line === undefined ? "" : crypto.createHash("sha256").update(line).digest("hex");
94
+ if (line === undefined || digest !== record.source_record_sha256 || !containsGlossaryTerm(line, group.term)) {
95
+ correction(`source evidence '${record.source_path}:${record.line}' is stale or no longer identifies '${group.term}'`);
96
+ }
97
+ }
98
+ }
99
+ }
100
+ function deriveEntry(proposalValue, confirmed) {
101
+ const source = proposalValue.canonical_evidence[0];
102
+ const date = confirmed.confirmed_at.slice(0, 10);
103
+ const entry = {
104
+ term: proposalValue.proposed_canonical_term,
105
+ meaning: proposalValue.concept,
106
+ confidence: proposalValue.confidence,
107
+ permanence: "stable",
108
+ temporal: { observed_at: date, last_confirmed_at: date },
109
+ provenance: {
110
+ kind: "project_file",
111
+ evidence: [{ source_path: source.source_path, source_record_sha256: source.source_record_sha256 }],
112
+ },
113
+ };
114
+ const violations = validateGlossaryEntry(entry, "project");
115
+ if (violations.length > 0)
116
+ correction(`derived project glossary entry is invalid: ${violations.join("; ")}`);
117
+ return entry;
118
+ }
119
+ function same(left, right) {
120
+ return canonicalTerminologyJson(left) === canonicalTerminologyJson(right);
121
+ }
122
+ function parseApproval(value, index) {
123
+ if (!mapping(value) || !exactFields(value, ["proposal_digest", "proposal", "confirmation"])) {
124
+ correction(`existing approvals[${index}] is malformed`, "conflict");
125
+ }
126
+ const proposed = proposal(value.proposal);
127
+ const confirmed = confirmation(value.confirmation, proposed.proposal_digest);
128
+ if (value.proposal_digest !== proposed.proposal_digest) {
129
+ correction(`existing approvals[${index}] has conflicting digest identity`, "conflict");
130
+ }
131
+ return {
132
+ approval: { proposal_digest: proposed.proposal_digest, proposal: proposed, confirmation: confirmed },
133
+ entry: deriveEntry(proposed, confirmed),
134
+ };
135
+ }
136
+ export function parseProjectGlossaryDocument(bytes, maxEntries = Number.POSITIVE_INFINITY) {
137
+ let value;
138
+ try {
139
+ value = loadYamlMapping(bytes);
140
+ }
141
+ catch (error) {
142
+ correction(`existing glossary document is malformed: ${error.message}`, "conflict");
143
+ }
144
+ if (!exactFields(value, ["schema_version", "approvals", "entries"]) || value.schema_version !== DOCUMENT_VERSION || !Array.isArray(value.approvals) || !Array.isArray(value.entries)) {
145
+ correction(`existing glossary document must use ${DOCUMENT_VERSION} with approvals and entries lists`, "conflict");
146
+ }
147
+ if (value.entries.length > maxEntries || value.approvals.length > maxEntries)
148
+ throw new GlossaryEntryBoundError("project glossary exceeds the consumer entry bound");
149
+ const approvals = value.approvals.map((item, index) => parseApproval(item, index));
150
+ const entries = value.entries;
151
+ if (entries.length !== approvals.length)
152
+ correction("existing glossary approvals and entries do not form complete publication pairs", "conflict");
153
+ const terminologyIdentities = [];
154
+ const digestIdentities = new Set();
155
+ for (const [index, item] of entries.entries()) {
156
+ if (!mapping(item))
157
+ correction(`existing entries[${index}] is malformed`, "conflict");
158
+ const violations = validateGlossaryEntry(item, "project");
159
+ if (violations.length > 0)
160
+ correction(`existing entries[${index}] is malformed: ${violations.join("; ")}`, "conflict");
161
+ if (!same(item, approvals[index].entry))
162
+ correction(`existing approval and entry at index ${index} do not match`, "conflict");
163
+ const canonical = String(item.term);
164
+ const digest = approvals[index].approval.proposal_digest;
165
+ if (digestIdentities.has(digest))
166
+ correction("existing glossary contains duplicate term or approval identity", "conflict");
167
+ digestIdentities.add(digest);
168
+ const terms = [canonical, ...approvals[index].approval.proposal.variants.map(({ term }) => term)];
169
+ for (const term of terms) {
170
+ const existing = terminologyIdentities.find((identity) => unicodeCaselessExact(identity.term, term));
171
+ if (existing) {
172
+ correction(`terminology identity collision for '${term}' between canonical sets '${existing.canonical}' and '${canonical}'`, "conflict", `Choose distinct canonical and variant terms for '${existing.canonical}' and '${canonical}', rerun audit, obtain confirmation for the corrected proposal, and retry the same glossary publish command.`);
173
+ }
174
+ terminologyIdentities.push({ term, canonical });
175
+ }
176
+ }
177
+ return {
178
+ schema_version: DOCUMENT_VERSION,
179
+ approvals: approvals.map(({ approval }) => approval),
180
+ entries: entries,
181
+ };
182
+ }
183
+ function validateCandidateBytes(bytes) {
184
+ return parseProjectGlossaryDocument(bytes);
185
+ }
186
+ export function loadProjectGlossaryDocument(projectRoot) {
187
+ const record = loadArtifactRecord("glossary");
188
+ if (!record)
189
+ correction("registered glossary artifact is unavailable");
190
+ const target = resolveArtifactPath(record, projectRoot);
191
+ if (!fs.existsSync(target))
192
+ return null;
193
+ return { path: target, document: parseProjectGlossaryDocument(fs.readFileSync(target, "utf8")) };
194
+ }
195
+ export function publishGlossary(req, root, options = {}) {
196
+ if (!req.input || !exactFields(req.input, REQUEST_FIELDS) || req.input.schema_version !== REQUEST_VERSION) {
197
+ correction(`publication request must use ${REQUEST_VERSION} and contain only proposal and confirmation`);
198
+ }
199
+ const proposed = proposal(req.input.proposal);
200
+ const confirmed = confirmation(req.input.confirmation, proposed.proposal_digest);
201
+ const entry = deriveEntry(proposed, confirmed);
202
+ const approval = {
203
+ proposal_digest: proposed.proposal_digest,
204
+ proposal: proposed,
205
+ confirmation: confirmed,
206
+ };
207
+ const record = loadArtifactRecord("glossary");
208
+ if (!record)
209
+ correction("registered glossary artifact is unavailable");
210
+ return withStateMutation(root.path, (transaction) => {
211
+ assertValidatedProjectRoot(root);
212
+ const target = resolveArtifactPath(record, root.path, { strictWrite: true });
213
+ const relativePath = path.relative(root.path, target).split(path.sep).join("/");
214
+ revalidateEvidence(root, proposed);
215
+ const previousBytes = fs.existsSync(target) ? fs.readFileSync(target, "utf8") : "";
216
+ const current = previousBytes
217
+ ? parseProjectGlossaryDocument(previousBytes)
218
+ : { schema_version: DOCUMENT_VERSION, approvals: [], entries: [] };
219
+ const approvalIndex = current.approvals.findIndex((item) => item.proposal_digest === proposed.proposal_digest);
220
+ const termIndex = current.entries.findIndex((item) => unicodeCaselessExact(String(item.term), proposed.proposed_canonical_term));
221
+ if (approvalIndex >= 0 || termIndex >= 0) {
222
+ if (approvalIndex === termIndex && approvalIndex >= 0 && same(current.approvals[approvalIndex], approval) && same(current.entries[termIndex], entry)) {
223
+ return {
224
+ schemaVersion: "agentera.stateWrite.v1",
225
+ status: "pass",
226
+ command: "state glossary publish",
227
+ artifact: "glossary",
228
+ path: relativePath,
229
+ operation: { dry_run: req.dryRun, changed: false, idempotent_replay: true },
230
+ candidate: current,
231
+ };
232
+ }
233
+ correction(`confirmed term '${proposed.proposed_canonical_term}' conflicts with existing approval or entry state`, "conflict");
234
+ }
235
+ const candidate = {
236
+ schema_version: DOCUMENT_VERSION,
237
+ approvals: [...current.approvals, approval],
238
+ entries: [...current.entries, entry],
239
+ };
240
+ const bytes = dumpYamlMapping(candidate);
241
+ validateCandidateBytes(bytes);
242
+ if (!req.dryRun) {
243
+ const stage = transaction.stageProjection(target, bytes);
244
+ try {
245
+ transaction.syncStaged(stage);
246
+ assertValidatedProjectRoot(root);
247
+ transaction.publishProjection(stage, target, previousBytes);
248
+ }
249
+ finally {
250
+ transaction.removeStage(stage);
251
+ }
252
+ }
253
+ return {
254
+ schemaVersion: "agentera.stateWrite.v1",
255
+ status: "pass",
256
+ command: "state glossary publish",
257
+ artifact: "glossary",
258
+ path: relativePath,
259
+ operation: { dry_run: req.dryRun, changed: true, idempotent_replay: false },
260
+ candidate,
261
+ };
262
+ }, options, root);
263
+ }
264
+ //# sourceMappingURL=glossaryPublication.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glossaryPublication.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/glossaryPublication.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,5 @@ export * from "./transaction.js";
9
9
  export * from "./validate.js";
10
10
  export * from "./serialize.js";
11
11
  export * from "./errors.js";
12
+ export * from "./glossaryPublication.js";
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { loadTodoReadinessContract } from "../../registries/todoReadinessContract.js";
2
- export const WRITABLE_ARTIFACTS = ["progress", "decisions", "plan", "health", "objective", "experiments", "todo", "docs"];
2
+ import { glossaryCaveatContract } from "../../registries/glossaryCaveatContract.js";
3
+ export const WRITABLE_ARTIFACTS = ["progress", "decisions", "plan", "health", "objective", "experiments", "todo", "docs", "glossary"];
3
4
  export const WRITE_VERBS = [
4
5
  "append",
5
6
  "update",
@@ -27,8 +28,7 @@ const todoReadinessFields = [
27
28
  { flag: "--queue-rank", field: "readiness.queue_rank", kind: "integer", description: "Reviewer-assigned intent order within severity; lower values run first." },
28
29
  { flag: "--order-reason", field: "readiness.order_reason", kind: "string", description: "Durable reason for the queue rank." },
29
30
  ];
30
- /** Caller-selected existing decision number (update/amend). Never CLI-assigned. */
31
- const EXISTING_DECISION_NUMBER_DESCRIPTION = "Existing decision number to update or amend. Caller-selected: it must match a numbered decision in the active projection or numbered archive and is never assigned by the CLI.";
31
+ const glossaryCaveat = glossaryCaveatContract();
32
32
  const progressAppend = [
33
33
  {
34
34
  flag: "--type",
@@ -47,6 +47,11 @@ const progressAppend = [
47
47
  { flag: "--what", field: "what", kind: "string", required: true },
48
48
  { flag: "--intent", field: "context.intent", kind: "string", required: true },
49
49
  { flag: "--timestamp", field: "timestamp", kind: "datetime", required: false },
50
+ { flag: "--glossary-caveat-event", field: "glossary_caveat.event", kind: "string", validValues: glossaryCaveat.events, description: "Build-owned glossary caveat lifecycle event. Other caveat flags are conditionally required; identity is CLI-assigned for current." },
51
+ { flag: "--glossary-caveat-reason", field: "glossary_caveat.reason", kind: "string", validValues: glossaryCaveat.reasons, description: "Bounded glossary caveat reason; never include a term, meaning, path, anchor, or provenance." },
52
+ { flag: "--glossary-caveat-ownership-state", field: "glossary_caveat.ownership_state", kind: "string", validValues: glossaryCaveat.ownershipStates, description: "Bounded authority state for the glossary caveat." },
53
+ { flag: "--glossary-caveat-id", field: "glossary_caveat.caveat_id", kind: "string", description: "Existing opaque caveat identity for resolved or superseded; forbidden for current." },
54
+ { flag: "--glossary-caveat-transition-id", field: "glossary_caveat.transition_id", kind: "string", description: "Fresh successor caveat identity for superseded; forbidden for current and resolved." },
50
55
  { flag: "--inspiration", field: "inspiration", kind: "string" },
51
56
  { flag: "--discovered", field: "discovered", kind: "string" },
52
57
  { flag: "--verified", field: "verified", kind: "string" },
@@ -79,13 +84,6 @@ const decisionAppend = [
79
84
  ];
80
85
  const decisionUpdate = [
81
86
  { flag: "--id", field: "id", kind: "string" },
82
- {
83
- flag: "--number",
84
- field: "number",
85
- kind: "integer",
86
- required: false,
87
- description: EXISTING_DECISION_NUMBER_DESCRIPTION,
88
- },
89
87
  {
90
88
  flag: "--satisfaction-state",
91
89
  field: "satisfaction.state",
@@ -97,25 +95,10 @@ const decisionUpdate = [
97
95
  { flag: "--confirmed-by", field: "satisfaction.user_confirmation.confirmed_by", kind: "string" },
98
96
  { flag: "--confirmed-at", field: "satisfaction.user_confirmation.confirmed_at", kind: "string" },
99
97
  ];
100
- /**
101
- * Amending decision content fields. `--number` is caller-selected (an existing
102
- * decision). At least one amendable content field must be supplied; individual
103
- * fields are optional so the writer can validate the union requirement.
104
- * `--alternative-rejected` is repeatable and appends rejected alternatives.
105
- * Confidence values must be current vocabulary (firm|provisional|exploratory).
106
- * Amendment publication publishes a record-local revision document override
107
- * with recovery; the decisions projection is never rewritten.
108
- */
98
+ /** Current decision amendments publish immutable revision entities by bare ID. */
109
99
  const decisionAmend = [
110
100
  { flag: "--id", field: "id", kind: "string" },
111
101
  { flag: "--base-sha256", field: "base_sha256", kind: "string" },
112
- {
113
- flag: "--number",
114
- field: "number",
115
- kind: "integer",
116
- required: false,
117
- description: EXISTING_DECISION_NUMBER_DESCRIPTION,
118
- },
119
102
  { flag: "--question", field: "question", kind: "string", required: false },
120
103
  { flag: "--context", field: "context", kind: "string", required: false },
121
104
  { flag: "--alternative-chosen", field: "alternatives.chosen", kind: "string", required: false },
@@ -171,7 +154,7 @@ const planEvaluationFields = [
171
154
  },
172
155
  ];
173
156
  const planSupersedeFields = [
174
- { flag: "--by", field: "superseded_by", kind: "string_list", required: true, repeatable: true, description: "Distinct completed replacement task IDs in the same plan." },
157
+ { flag: "--by", field: "superseded_by", kind: "string_list", required: true, repeatable: true, description: "Distinct same-plan replacement task IDs that are complete with latest persisted PASS." },
175
158
  { flag: "--reason", field: "superseded_reason", kind: "string", required: true, description: "Required explanation, at most 500 characters." },
176
159
  ];
177
160
  const SPECS = [
@@ -315,6 +298,12 @@ const SPECS = [
315
298
  inputRoot: "one documentation inventory entry",
316
299
  cliOwnedFields: ["id", "artifact"],
317
300
  },
301
+ {
302
+ artifact: "glossary",
303
+ verb: "publish",
304
+ fields: [],
305
+ inputRoot: "one glossary publication request",
306
+ },
318
307
  ];
319
308
  export function operationSpec(artifact, verb) {
320
309
  const spec = SPECS.find((candidate) => candidate.artifact === artifact && candidate.verb === verb) ?? null;
@@ -340,12 +329,20 @@ export function isWriteVerb(value) {
340
329
  export function isWritableArtifact(value) {
341
330
  return WRITABLE_ARTIFACTS.includes(value);
342
331
  }
332
+ export function writerOwnedFields(artifact) {
333
+ if (artifact === "progress")
334
+ return ["id", "artifact", "publication_order"];
335
+ if (artifact === "health")
336
+ return ["id", "artifact", "appended_at"];
337
+ return [];
338
+ }
343
339
  export function stateWriterArtifactContract(artifact, projectRoot = process.cwd()) {
344
340
  if (!isWritableArtifact(artifact))
345
341
  return null;
346
342
  void projectRoot;
347
343
  const verbs = verbsForArtifact(artifact);
348
344
  const mutations = verbs.filter((verb) => verb !== "explain");
345
+ const owned = writerOwnedFields(artifact);
349
346
  return {
350
347
  artifact,
351
348
  mutations,
@@ -355,6 +352,7 @@ export function stateWriterArtifactContract(artifact, projectRoot = process.cwd(
355
352
  `agentera state ${artifact} explain --verb ${verb} --format json`,
356
353
  ])),
357
354
  supports_dry_run: true,
355
+ ...(owned.length ? { writer_owned_fields: owned } : {}),
358
356
  };
359
357
  }
360
358
  export function stateWriterContract(targets = WRITABLE_ARTIFACTS) {
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/operations.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ function mapping(value) {
5
5
  ? value
6
6
  : {};
7
7
  }
8
- export function mutatePlanTaskEvaluation(task, inputValue, taskLabel) {
8
+ export function mutatePlanTaskEvaluation(task, inputValue, taskLabel, allowCompletedReplacementRecovery = false) {
9
9
  const input = mapping(inputValue);
10
10
  const attemptId = String(input.attempt_id ?? "").trim();
11
11
  const verdict = String(input.verdict ?? "");
@@ -27,7 +27,11 @@ export function mutatePlanTaskEvaluation(task, inputValue, taskLabel) {
27
27
  reject({ class: "conflict", message: `evaluation attempt '${attemptId}' already exists with different result data` });
28
28
  return { replay: true, attemptCount: Number(prior.attempt_count ?? 0), failureCount: Number(prior.failure_count ?? 0) };
29
29
  }
30
- if (["complete", "blocked", "superseded"].includes(String(task.status ?? "")))
30
+ const completedReplacementRecovery = allowCompletedReplacementRecovery
31
+ && task.status === "complete"
32
+ && task.evaluation === undefined
33
+ && verdict === "pass";
34
+ if (["complete", "blocked", "superseded"].includes(String(task.status ?? "")) && !completedReplacementRecovery)
31
35
  reject({ class: "conflict", message: `${taskLabel} is ${task.status} and cannot accept another evaluation` });
32
36
  const attemptCount = Number(prior.attempt_count ?? 0);
33
37
  const failureCount = Number(prior.failure_count ?? 0);
@@ -1 +1 @@
1
- {"version":3,"file":"planEvaluation.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/planEvaluation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planEvaluation.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/planEvaluation.ts"],"names":[],"mappings":"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"}
@@ -7,18 +7,21 @@ import { appendProgressEntity } from "../progressEntities.js";
7
7
  import { requireEntityStateBinding } from "../stateMode.js";
8
8
  import { mutateTodoDocsEntity } from "../todoDocsEntities.js";
9
9
  import { reject } from "./errors.js";
10
+ import { publishGlossary } from "./glossaryPublication.js";
10
11
  export function executeStateWrite(req, _options = {}) {
11
12
  const binding = requireEntityStateBinding(req.projectRoot);
12
13
  const publicationContext = binding.publicationContext;
13
14
  try {
15
+ if (req.artifact === "glossary")
16
+ return publishGlossary(req, binding.root, _options);
14
17
  if (req.artifact === "progress")
15
- return appendProgressEntity(req, { publicationContext });
18
+ return withEntityWriterLock(publicationContext, () => appendProgressEntity(req, { publicationContext }));
16
19
  if (req.artifact === "decisions") {
17
20
  if (req.spec.verb === "append")
18
21
  return appendDecisionEntity(req, { publicationContext });
19
- if (req.spec.verb === "update")
20
- return updateDecisionSatisfactionEntity(req, { publicationContext });
21
- return amendDecisionEntity(req, { publicationContext });
22
+ return withEntityWriterLock(publicationContext, () => req.spec.verb === "update"
23
+ ? updateDecisionSatisfactionEntity(req, { publicationContext })
24
+ : amendDecisionEntity(req, { publicationContext }));
22
25
  }
23
26
  if (req.artifact === "health") {
24
27
  if (req.spec.verb === "repair") {
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMrC,MAAM,UAAU,iBAAiB,CAC/B,GAAsB,EACtB,WAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACtD,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC1F,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACzF,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,gCAAgC,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACrG,OAAO,mBAAmB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC;oBACL,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,4LAA4L;iBACtM,CAAC,CAAC;YACL,CAAC;YACD,OAAO,kBAAkB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM;YAAE,OAAO,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACpI,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW;YAAE,OAAO,qBAAqB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC5F,IAAI,GAAG,CAAC,QAAQ,KAAK,aAAa;YAAE,OAAO,uBAAuB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAChG,OAAO,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3D,CAAC;YAAS,CAAC;QACT,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera/packages/cli/src/state/write/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAM3D,MAAM,UAAU,iBAAiB,CAC/B,GAAsB,EACtB,WAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACtD,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrF,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAC1I,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACzF,OAAO,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAC9E,CAAC,CAAC,gCAAgC,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC;gBAC/D,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC;oBACL,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,4LAA4L;iBACtM,CAAC,CAAC;YACL,CAAC;YACD,OAAO,kBAAkB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM;YAAE,OAAO,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACpI,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW;YAAE,OAAO,qBAAqB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC5F,IAAI,GAAG,CAAC,QAAQ,KAAK,aAAa;YAAE,OAAO,uBAAuB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAChG,OAAO,oBAAoB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3D,CAAC;YAAS,CAAC;QACT,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
@@ -220,21 +220,26 @@ export function buildUpgradePlan(args) {
220
220
  }
221
221
  function buildUpgradePlanUnlocked(args, home, project, activeUpgradeLockPaths) {
222
222
  const sourceRoot = resolveSourceRootStrict();
223
- const inheritedXdgConfigHome = process.env.XDG_CONFIG_HOME
224
- ? resolvePath(process.env.XDG_CONFIG_HOME)
225
- : null;
226
- const xdgRelative = inheritedXdgConfigHome ? path.relative(home, inheritedXdgConfigHome) : null;
227
- const xdgConfigHome = inheritedXdgConfigHome
228
- && xdgRelative !== null
229
- && !xdgRelative.startsWith(`..${path.sep}`)
230
- && !path.isAbsolute(xdgRelative)
231
- ? inheritedXdgConfigHome
232
- : path.join(home, ".config");
223
+ const homeScopedPath = (value) => {
224
+ if (!value)
225
+ return null;
226
+ // Relative overrides retain their normal process-cwd meaning before the
227
+ // resolved path is checked. The home itself and its descendants are valid.
228
+ const resolved = resolvePath(value);
229
+ const relative = path.relative(home, resolved);
230
+ const withinHome = relative === ""
231
+ || (relative !== ".." && !relative.startsWith(`..${path.sep}`) && !path.isAbsolute(relative));
232
+ return withinHome ? resolved : null;
233
+ };
234
+ const xdgConfigHome = homeScopedPath(process.env.XDG_CONFIG_HOME) ?? path.join(home, ".config");
233
235
  const env = {
234
236
  ...process.env,
235
237
  HOME: home,
236
238
  XDG_CONFIG_HOME: xdgConfigHome,
237
239
  };
240
+ if (!homeScopedPath(process.env.OPENCODE_CONFIG_DIR)) {
241
+ delete env.OPENCODE_CONFIG_DIR;
242
+ }
238
243
  const [installRoot] = resolveDoctorInstallRoot(args.installRoot ?? null, { home, sourceRoot });
239
244
  const channel = resolveInvokedUpdateChannel({
240
245
  channel: args.channel ?? null,