@ashlr/hub 3.2.6 → 3.2.7

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 (73) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/build-identity.json +2 -2
  3. package/dist/cli/completions.js +3 -1
  4. package/dist/cli/completions.js.map +1 -1
  5. package/dist/cli/conductor-permit.d.ts +1 -0
  6. package/dist/cli/conductor-permit.js +122 -0
  7. package/dist/cli/conductor-permit.js.map +1 -0
  8. package/dist/cli/goals.d.ts +2 -0
  9. package/dist/cli/goals.js +90 -5
  10. package/dist/cli/goals.js.map +1 -1
  11. package/dist/cli/help.js +2 -0
  12. package/dist/cli/help.js.map +1 -1
  13. package/dist/cli/index.js +6 -0
  14. package/dist/cli/index.js.map +1 -1
  15. package/dist/cli/loop.js +26 -5
  16. package/dist/cli/loop.js.map +1 -1
  17. package/dist/core/comms/elon-dialogue.js +16 -7
  18. package/dist/core/comms/elon-dialogue.js.map +1 -1
  19. package/dist/core/daemon/activation-permit.d.ts +89 -0
  20. package/dist/core/daemon/activation-permit.js +397 -0
  21. package/dist/core/daemon/activation-permit.js.map +1 -1
  22. package/dist/core/daemon/goal-conductor-permit-operator.d.ts +75 -0
  23. package/dist/core/daemon/goal-conductor-permit-operator.js +842 -0
  24. package/dist/core/daemon/goal-conductor-permit-operator.js.map +1 -0
  25. package/dist/core/daemon/loop.js +102 -20
  26. package/dist/core/daemon/loop.js.map +1 -1
  27. package/dist/core/fleet/quota.d.ts +74 -7
  28. package/dist/core/fleet/quota.js +688 -34
  29. package/dist/core/fleet/quota.js.map +1 -1
  30. package/dist/core/fleet/status.js +6 -5
  31. package/dist/core/fleet/status.js.map +1 -1
  32. package/dist/core/goals/advance.js +34 -5
  33. package/dist/core/goals/advance.js.map +1 -1
  34. package/dist/core/goals/conductor-quota.d.ts +38 -0
  35. package/dist/core/goals/conductor-quota.js +110 -0
  36. package/dist/core/goals/conductor-quota.js.map +1 -0
  37. package/dist/core/goals/conductor-target.d.ts +24 -0
  38. package/dist/core/goals/conductor-target.js +35 -0
  39. package/dist/core/goals/conductor-target.js.map +1 -0
  40. package/dist/core/goals/conductor.d.ts +15 -0
  41. package/dist/core/goals/conductor.js +116 -9
  42. package/dist/core/goals/conductor.js.map +1 -1
  43. package/dist/core/goals/store.d.ts +29 -5
  44. package/dist/core/goals/store.js +179 -26
  45. package/dist/core/goals/store.js.map +1 -1
  46. package/dist/core/goals/timestamp-repair.d.ts +50 -0
  47. package/dist/core/goals/timestamp-repair.js +740 -0
  48. package/dist/core/goals/timestamp-repair.js.map +1 -0
  49. package/dist/core/integrations/pulse-sync.js +13 -4
  50. package/dist/core/integrations/pulse-sync.js.map +1 -1
  51. package/dist/core/run/best-of-n.d.ts +18 -0
  52. package/dist/core/run/best-of-n.js +163 -18
  53. package/dist/core/run/best-of-n.js.map +1 -1
  54. package/dist/core/run/orchestrator.js +54 -0
  55. package/dist/core/run/orchestrator.js.map +1 -1
  56. package/dist/core/strategy/goal-planner.js +7 -1
  57. package/dist/core/strategy/goal-planner.js.map +1 -1
  58. package/dist/core/swarm/planner.d.ts +2 -2
  59. package/dist/core/swarm/planner.js +52 -5
  60. package/dist/core/swarm/planner.js.map +1 -1
  61. package/dist/core/swarm/runner.js +29 -3
  62. package/dist/core/swarm/runner.js.map +1 -1
  63. package/dist/core/types.d.ts +39 -0
  64. package/dist/core/types.js.map +1 -1
  65. package/dist/core/web/control.js +5 -2
  66. package/dist/core/web/control.js.map +1 -1
  67. package/dist/release-dependency-inventory.json +1 -1
  68. package/dist/tui/app.js +2 -2
  69. package/dist/tui/app.js.map +1 -1
  70. package/dist/tui/render.d.ts +2 -0
  71. package/dist/tui/render.js +162 -4
  72. package/dist/tui/render.js.map +1 -1
  73. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"elon-dialogue.js","sourceRoot":"","sources":["../../../src/core/comms/elon-dialogue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elon-dialogue.js","sourceRoot":"","sources":["../../../src/core/comms/elon-dialogue.ts"],"names":[],"mappings":"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"}
@@ -161,4 +161,93 @@ export declare function inspectDaemonActivationPermitForVerification(cfg: AshlrC
161
161
  * durability with injected roots, but deliberately cannot mint authority.
162
162
  */
163
163
  export declare function consumeDaemonActivationPermitForVerification(cfg: AshlrConfig, opts: DaemonActivationOptions, options: DaemonActivationPermitTestConsumerOptions): DaemonActivationPermitResult;
164
+ declare const GOAL_CONDUCTOR_POLICY_VERSION = "goal-conductor-proposal-once-v1";
165
+ export declare const GOAL_CONDUCTOR_ONCE_MAX_TOKENS = 50000;
166
+ export declare const GOAL_CONDUCTOR_ONCE_MAX_STEPS = 12;
167
+ declare const goalConductorCapabilityBrand: unique symbol;
168
+ export interface GoalConductorActivationTarget {
169
+ goalId: string;
170
+ milestoneId: string;
171
+ goalDigest: string;
172
+ projectPath: string;
173
+ }
174
+ export interface GoalConductorActivationContext extends DaemonActivationRuntimeContext {
175
+ target: GoalConductorActivationTarget;
176
+ }
177
+ export interface GoalConductorActivationPermitPayload {
178
+ schemaVersion: 1;
179
+ policyVersion: typeof GOAL_CONDUCTOR_POLICY_VERSION;
180
+ permitId: string;
181
+ nonce: string;
182
+ keyId: string;
183
+ issuedAt: string;
184
+ expiresAt: string;
185
+ scope: {
186
+ action: 'goal-conductor-proposal-once';
187
+ once: true;
188
+ dryRun: false;
189
+ resident: false;
190
+ maxGoals: 1;
191
+ maxMilestones: 1;
192
+ maxRetries: 0;
193
+ allowCloud: false;
194
+ allowAnyRepo: false;
195
+ daemonFallback: false;
196
+ proposalOnly: true;
197
+ automerge: false;
198
+ repair: false;
199
+ deploy: false;
200
+ install: false;
201
+ selfTarget: false;
202
+ maxTokens: typeof GOAL_CONDUCTOR_ONCE_MAX_TOKENS;
203
+ maxSteps: typeof GOAL_CONDUCTOR_ONCE_MAX_STEPS;
204
+ };
205
+ bindings: DaemonActivationPermitPayload['bindings'] & {
206
+ target: GoalConductorActivationTarget;
207
+ };
208
+ }
209
+ export interface GoalConductorActivationPermitEnvelope {
210
+ payload: GoalConductorActivationPermitPayload;
211
+ signature: string;
212
+ }
213
+ export interface GoalConductorActivationCapability {
214
+ readonly kind: 'goal-conductor-proposal-once';
215
+ readonly permitId: string;
216
+ readonly target: Readonly<GoalConductorActivationTarget>;
217
+ readonly [goalConductorCapabilityBrand]: true;
218
+ }
219
+ export interface GoalConductorActivationPermitResult {
220
+ authorized: boolean;
221
+ reason: string;
222
+ permitId?: string;
223
+ receiptPath?: string;
224
+ capability?: GoalConductorActivationCapability;
225
+ configSnapshot?: AshlrConfig;
226
+ }
227
+ export interface GoalConductorActivationTestConsumerOptions {
228
+ trustRoots: readonly DaemonActivationTrustRoot[];
229
+ context?: GoalConductorActivationContext;
230
+ afterReceiptPersisted?: () => void;
231
+ }
232
+ /** Immutable repository-owned roots. Intentionally empty in production. */
233
+ export declare const GOAL_CONDUCTOR_ACTIVATION_TRUST_ROOTS: readonly Readonly<DaemonActivationTrustRoot>[];
234
+ export declare function parseGoalConductorActivationPermitEnvelope(value: unknown): GoalConductorActivationPermitEnvelope | null;
235
+ export declare function buildGoalConductorActivationPermitPayload(input: {
236
+ permitId: string;
237
+ nonce: string;
238
+ keyId: string;
239
+ issuedAt: string;
240
+ expiresAt: string;
241
+ context: GoalConductorActivationContext;
242
+ }): GoalConductorActivationPermitPayload;
243
+ export declare function signGoalConductorActivationPermit(payload: GoalConductorActivationPermitPayload, privateKey: string | KeyObject): GoalConductorActivationPermitEnvelope;
244
+ export declare function verifyGoalConductorActivationPermit(value: unknown, context: GoalConductorActivationContext, roots: readonly DaemonActivationTrustRoot[]): DaemonActivationPermitVerification;
245
+ export declare function goalConductorActivationPermitPath(): string;
246
+ export declare function goalConductorActivationReceiptPath(permitId: string): string;
247
+ export declare function goalConductorActivationNonceReceiptPath(nonceDigest: string): string;
248
+ /** Collect the same read-only runtime binding used at permit consumption. */
249
+ export declare function collectGoalConductorActivationContext(cfg: AshlrConfig, target: GoalConductorActivationTarget): GoalConductorActivationContext;
250
+ export declare function isGoalConductorActivationCapability(value: unknown, target: GoalConductorActivationTarget): value is GoalConductorActivationCapability;
251
+ export declare function consumeGoalConductorActivationPermit(cfg: AshlrConfig, target: GoalConductorActivationTarget): GoalConductorActivationPermitResult;
252
+ export declare function consumeGoalConductorActivationPermitForVerification(cfg: AshlrConfig, target: GoalConductorActivationTarget, options: GoalConductorActivationTestConsumerOptions): GoalConductorActivationPermitResult;
164
253
  export {};
@@ -1016,4 +1016,401 @@ export function inspectDaemonActivationPermitForVerification(cfg, opts, options)
1016
1016
  export function consumeDaemonActivationPermitForVerification(cfg, opts, options) {
1017
1017
  return consumeWithAuthority(cfg, opts, options.trustRoots, options.context, options.afterReceiptPersisted, false);
1018
1018
  }
1019
+ // ---------------------------------------------------------------------------
1020
+ // Dormant signed one-shot goal-conductor authority.
1021
+ //
1022
+ // This is deliberately a separate protocol from M461. A daemon permit can
1023
+ // never authorize a goal advance, and a conductor permit can never authorize a
1024
+ // daemon tick. Production roots remain empty; only verification tests inject a
1025
+ // root. A reviewed source change is therefore still required before live use.
1026
+ // ---------------------------------------------------------------------------
1027
+ const GOAL_CONDUCTOR_POLICY_VERSION = 'goal-conductor-proposal-once-v1';
1028
+ const GOAL_CONDUCTOR_SIGNING_DOMAIN = 'ashlr:goal-conductor-activation-permit:v1\0';
1029
+ export const GOAL_CONDUCTOR_ONCE_MAX_TOKENS = 50_000;
1030
+ export const GOAL_CONDUCTOR_ONCE_MAX_STEPS = 12;
1031
+ const goalConductorCapabilityBrand = Symbol('ashlr.goal-conductor-activation-capability');
1032
+ /** Immutable repository-owned roots. Intentionally empty in production. */
1033
+ export const GOAL_CONDUCTOR_ACTIVATION_TRUST_ROOTS = Object.freeze([]);
1034
+ const validGoalConductorCapabilities = new WeakMap();
1035
+ function validGoalConductorTarget(value) {
1036
+ return isRecord(value)
1037
+ && hasExactKeys(value, ['goalId', 'milestoneId', 'goalDigest', 'projectPath'])
1038
+ && typeof value['goalId'] === 'string'
1039
+ && value['goalId'].length > 0
1040
+ && value['goalId'].length <= 256
1041
+ && typeof value['milestoneId'] === 'string'
1042
+ && value['milestoneId'].length > 0
1043
+ && value['milestoneId'].length <= 320
1044
+ && DIGEST_RE.test(String(value['goalDigest']))
1045
+ && typeof value['projectPath'] === 'string'
1046
+ && isAbsolute(value['projectPath']);
1047
+ }
1048
+ function validGoalConductorScope(value) {
1049
+ if (!isRecord(value) || !hasExactKeys(value, [
1050
+ 'action', 'once', 'dryRun', 'resident', 'maxGoals', 'maxMilestones',
1051
+ 'maxRetries', 'allowCloud', 'allowAnyRepo', 'daemonFallback',
1052
+ 'proposalOnly', 'automerge', 'repair', 'deploy', 'install', 'selfTarget',
1053
+ 'maxTokens', 'maxSteps',
1054
+ ]))
1055
+ return false;
1056
+ return value['action'] === 'goal-conductor-proposal-once'
1057
+ && value['once'] === true
1058
+ && value['dryRun'] === false
1059
+ && value['resident'] === false
1060
+ && value['maxGoals'] === 1
1061
+ && value['maxMilestones'] === 1
1062
+ && value['maxRetries'] === 0
1063
+ && value['allowCloud'] === false
1064
+ && value['allowAnyRepo'] === false
1065
+ && value['daemonFallback'] === false
1066
+ && value['proposalOnly'] === true
1067
+ && value['automerge'] === false
1068
+ && value['repair'] === false
1069
+ && value['deploy'] === false
1070
+ && value['install'] === false
1071
+ && value['selfTarget'] === false
1072
+ && value['maxTokens'] === GOAL_CONDUCTOR_ONCE_MAX_TOKENS
1073
+ && value['maxSteps'] === GOAL_CONDUCTOR_ONCE_MAX_STEPS;
1074
+ }
1075
+ function parseGoalConductorPayload(value) {
1076
+ if (!isRecord(value) || !hasExactKeys(value, [
1077
+ 'schemaVersion', 'policyVersion', 'permitId', 'nonce', 'keyId',
1078
+ 'issuedAt', 'expiresAt', 'scope', 'bindings',
1079
+ ]))
1080
+ return null;
1081
+ if (value['schemaVersion'] !== 1
1082
+ || value['policyVersion'] !== GOAL_CONDUCTOR_POLICY_VERSION
1083
+ || typeof value['permitId'] !== 'string'
1084
+ || !ID_RE.test(value['permitId'])
1085
+ || typeof value['nonce'] !== 'string'
1086
+ || !DIGEST_RE.test(value['nonce'])
1087
+ || typeof value['keyId'] !== 'string'
1088
+ || !KEY_ID_RE.test(value['keyId'])
1089
+ || !validIsoTimestamp(value['issuedAt'])
1090
+ || !validIsoTimestamp(value['expiresAt'])
1091
+ || !validGoalConductorScope(value['scope'])
1092
+ || !isRecord(value['bindings'])
1093
+ || !hasExactKeys(value['bindings'], [
1094
+ 'configDigest', 'buildIdentity', 'executable', 'entrypoint', 'releaseTree',
1095
+ 'authorityStateDigest', 'killSwitch', 'guardHealth', 'target',
1096
+ ])
1097
+ || !validBindings({
1098
+ configDigest: value['bindings']['configDigest'],
1099
+ buildIdentity: value['bindings']['buildIdentity'],
1100
+ executable: value['bindings']['executable'],
1101
+ entrypoint: value['bindings']['entrypoint'],
1102
+ releaseTree: value['bindings']['releaseTree'],
1103
+ authorityStateDigest: value['bindings']['authorityStateDigest'],
1104
+ killSwitch: value['bindings']['killSwitch'],
1105
+ guardHealth: value['bindings']['guardHealth'],
1106
+ })
1107
+ || !validGoalConductorTarget(value['bindings']['target']))
1108
+ return null;
1109
+ return value;
1110
+ }
1111
+ export function parseGoalConductorActivationPermitEnvelope(value) {
1112
+ if (!isRecord(value) || !hasExactKeys(value, ['payload', 'signature']))
1113
+ return null;
1114
+ const payload = parseGoalConductorPayload(value['payload']);
1115
+ if (!payload || typeof value['signature'] !== 'string')
1116
+ return null;
1117
+ const bytes = Buffer.from(value['signature'], 'base64');
1118
+ if (bytes.length !== 64 || bytes.toString('base64') !== value['signature'])
1119
+ return null;
1120
+ return { payload, signature: value['signature'] };
1121
+ }
1122
+ function goalConductorSigningBytes(payload) {
1123
+ return Buffer.from(`${GOAL_CONDUCTOR_SIGNING_DOMAIN}${canonicalizeDaemonActivationValue(payload)}`, 'utf8');
1124
+ }
1125
+ export function buildGoalConductorActivationPermitPayload(input) {
1126
+ const payload = {
1127
+ schemaVersion: 1,
1128
+ policyVersion: GOAL_CONDUCTOR_POLICY_VERSION,
1129
+ permitId: input.permitId,
1130
+ nonce: input.nonce,
1131
+ keyId: input.keyId,
1132
+ issuedAt: input.issuedAt,
1133
+ expiresAt: input.expiresAt,
1134
+ scope: {
1135
+ action: 'goal-conductor-proposal-once', once: true, dryRun: false,
1136
+ resident: false, maxGoals: 1, maxMilestones: 1, maxRetries: 0,
1137
+ allowCloud: false, allowAnyRepo: false, daemonFallback: false,
1138
+ proposalOnly: true, automerge: false, repair: false, deploy: false,
1139
+ install: false, selfTarget: false,
1140
+ maxTokens: GOAL_CONDUCTOR_ONCE_MAX_TOKENS,
1141
+ maxSteps: GOAL_CONDUCTOR_ONCE_MAX_STEPS,
1142
+ },
1143
+ bindings: {
1144
+ configDigest: input.context.configDigest,
1145
+ buildIdentity: { ...input.context.buildIdentity },
1146
+ executable: { ...input.context.executable },
1147
+ entrypoint: { ...input.context.entrypoint },
1148
+ releaseTree: { ...input.context.releaseTree },
1149
+ authorityStateDigest: input.context.authorityStateDigest,
1150
+ killSwitch: 'off', guardHealth: 'healthy',
1151
+ target: { ...input.context.target },
1152
+ },
1153
+ };
1154
+ if (!parseGoalConductorPayload(payload))
1155
+ throw new Error('invalid goal conductor permit payload input');
1156
+ return payload;
1157
+ }
1158
+ export function signGoalConductorActivationPermit(payload, privateKey) {
1159
+ if (!parseGoalConductorPayload(payload))
1160
+ throw new Error('invalid goal conductor permit payload');
1161
+ const key = typeof privateKey === 'string' ? createPrivateKey(privateKey) : privateKey;
1162
+ if (key.type !== 'private' || key.asymmetricKeyType !== 'ed25519') {
1163
+ throw new Error('goal conductor activation permits require an Ed25519 private key');
1164
+ }
1165
+ return { payload, signature: sign(null, goalConductorSigningBytes(payload), key).toString('base64') };
1166
+ }
1167
+ export function verifyGoalConductorActivationPermit(value, context, roots) {
1168
+ if (roots.length === 0)
1169
+ return { ok: false, reason: 'no-trusted-goal-conductor-activation-roots' };
1170
+ const envelope = parseGoalConductorActivationPermitEnvelope(value);
1171
+ if (!envelope)
1172
+ return { ok: false, reason: 'invalid-goal-conductor-permit-schema' };
1173
+ if (!Number.isSafeInteger(context.nowMs) || context.nowMs < 0
1174
+ || !validGoalConductorTarget(context.target)
1175
+ || !context.killSwitchOff || !context.guardHealthHealthy
1176
+ || !validBuildIdentity(context.buildIdentity)
1177
+ || !validFileBinding(context.executable)
1178
+ || !validFileBinding(context.entrypoint)
1179
+ || !validFileBinding(context.releaseTree)
1180
+ || !DIGEST_RE.test(context.configDigest)
1181
+ || !DIGEST_RE.test(context.authorityStateDigest)) {
1182
+ return { ok: false, reason: 'invalid-runtime-goal-conductor-context' };
1183
+ }
1184
+ const issuedAt = Date.parse(envelope.payload.issuedAt);
1185
+ const expiresAt = Date.parse(envelope.payload.expiresAt);
1186
+ if (expiresAt <= issuedAt || expiresAt - issuedAt > MAX_VALIDITY_MS) {
1187
+ return { ok: false, reason: 'invalid-goal-conductor-permit-validity-window' };
1188
+ }
1189
+ if (issuedAt > context.nowMs + MAX_FUTURE_SKEW_MS)
1190
+ return { ok: false, reason: 'permit-issued-too-far-in-future' };
1191
+ if (expiresAt <= context.nowMs)
1192
+ return { ok: false, reason: 'permit-expired' };
1193
+ const expectedBindings = {
1194
+ configDigest: context.configDigest,
1195
+ buildIdentity: context.buildIdentity,
1196
+ executable: context.executable,
1197
+ entrypoint: context.entrypoint,
1198
+ releaseTree: context.releaseTree,
1199
+ authorityStateDigest: context.authorityStateDigest,
1200
+ killSwitch: 'off', guardHealth: 'healthy', target: context.target,
1201
+ };
1202
+ if (!equalCanonical(envelope.payload.bindings, expectedBindings)) {
1203
+ return { ok: false, reason: 'goal-conductor-permit-runtime-binding-mismatch' };
1204
+ }
1205
+ const trusted = trustRootMap(roots);
1206
+ const publicKey = trusted?.get(envelope.payload.keyId);
1207
+ if (!publicKey)
1208
+ return { ok: false, reason: trusted ? 'permit-key-not-trusted' : 'invalid-trust-root-set' };
1209
+ if (!verify(null, goalConductorSigningBytes(envelope.payload), publicKey, Buffer.from(envelope.signature, 'base64'))) {
1210
+ return { ok: false, reason: 'invalid-permit-signature' };
1211
+ }
1212
+ return {
1213
+ ok: true,
1214
+ reason: 'valid-goal-conductor-proposal-once-permit',
1215
+ permitId: envelope.payload.permitId,
1216
+ payloadDigest: sha256(canonicalizeDaemonActivationValue(envelope.payload)),
1217
+ };
1218
+ }
1219
+ export function goalConductorActivationPermitPath() {
1220
+ return join(homedir(), '.ashlr', 'control', 'goal-conductor-permit-publication', 'records', 'goal-conductor-activation-permit.json');
1221
+ }
1222
+ export function goalConductorActivationReceiptPath(permitId) {
1223
+ if (!ID_RE.test(permitId))
1224
+ throw new Error('invalid goal conductor activation permit id');
1225
+ return join(homedir(), '.ashlr', 'control', 'activation-receipts', 'goal-conductor', `${permitId}.json`);
1226
+ }
1227
+ export function goalConductorActivationNonceReceiptPath(nonceDigest) {
1228
+ if (!DIGEST_RE.test(nonceDigest))
1229
+ throw new Error('invalid goal conductor nonce digest');
1230
+ return join(homedir(), '.ashlr', 'control', 'activation-receipts', 'goal-conductor', 'by-nonce', `${nonceDigest}.json`);
1231
+ }
1232
+ /** Collect the same read-only runtime binding used at permit consumption. */
1233
+ export function collectGoalConductorActivationContext(cfg, target) {
1234
+ if (!validGoalConductorTarget(target)) {
1235
+ throw new Error('invalid goal conductor target');
1236
+ }
1237
+ return { ...collectRuntimeContext(strictConfigSnapshot(cfg)), target: { ...target } };
1238
+ }
1239
+ function mintGoalConductorCapability(permitId, target, validateAtClaim) {
1240
+ const capability = Object.freeze({
1241
+ kind: 'goal-conductor-proposal-once',
1242
+ permitId,
1243
+ target: Object.freeze({ ...target }),
1244
+ [goalConductorCapabilityBrand]: true,
1245
+ });
1246
+ validGoalConductorCapabilities.set(capability, validateAtClaim);
1247
+ return capability;
1248
+ }
1249
+ export function isGoalConductorActivationCapability(value, target) {
1250
+ if (typeof value !== 'object' || value === null)
1251
+ return false;
1252
+ const validate = validGoalConductorCapabilities.get(value);
1253
+ if (!validate)
1254
+ return false;
1255
+ validGoalConductorCapabilities.delete(value);
1256
+ const capability = value;
1257
+ try {
1258
+ return equalCanonical(capability.target, target) && validate();
1259
+ }
1260
+ catch {
1261
+ return false;
1262
+ }
1263
+ }
1264
+ function consumeGoalConductorWithAuthority(cfg, target, roots, suppliedContext, afterReceiptPersisted, mayMintCapability = false) {
1265
+ if (roots.length === 0)
1266
+ return { authorized: false, reason: 'no-trusted-goal-conductor-activation-roots' };
1267
+ if (process.platform === 'win32')
1268
+ return { authorized: false, reason: 'goal-conductor-activation-v1-unsupported-on-windows' };
1269
+ let configSnapshot;
1270
+ try {
1271
+ configSnapshot = strictConfigSnapshot(cfg);
1272
+ }
1273
+ catch {
1274
+ return { authorized: false, reason: 'activation-config-not-strict-json' };
1275
+ }
1276
+ const home = resolve(homedir());
1277
+ const permitPath = goalConductorActivationPermitPath();
1278
+ const lock = acquireLocalStoreLock(`${permitPath}.lock`, LOCK_WAIT_MS, {
1279
+ anchorPath: home, exactPrivateStorage: true,
1280
+ });
1281
+ if (!lock)
1282
+ return { authorized: false, reason: 'goal-conductor-permit-lock-unavailable' };
1283
+ let pinned;
1284
+ let result = {
1285
+ authorized: false, reason: 'goal-conductor-permit-consumption-failed',
1286
+ };
1287
+ try {
1288
+ pinned = openPinnedPermit(permitPath, home);
1289
+ const envelope = JSON.parse(pinned.text);
1290
+ if (`${canonicalizeDaemonActivationValue(envelope)}\n` !== pinned.text) {
1291
+ result = { authorized: false, reason: 'noncanonical-goal-conductor-permit-encoding' };
1292
+ return result;
1293
+ }
1294
+ const parsed = parseGoalConductorActivationPermitEnvelope(envelope);
1295
+ if (!parsed) {
1296
+ result = { authorized: false, reason: 'invalid-goal-conductor-permit-schema' };
1297
+ return result;
1298
+ }
1299
+ const context = suppliedContext ?? { ...collectRuntimeContext(configSnapshot), target };
1300
+ if (context.configDigest !== daemonActivationConfigDigest(configSnapshot)) {
1301
+ result = { authorized: false, reason: 'runtime-config-digest-mismatch' };
1302
+ return result;
1303
+ }
1304
+ if (!equalCanonical(context.target, target)) {
1305
+ result = { authorized: false, reason: 'goal-conductor-target-context-mismatch' };
1306
+ return result;
1307
+ }
1308
+ const checked = verifyGoalConductorActivationPermit(parsed, context, roots);
1309
+ if (!checked.ok || !checked.permitId || !checked.payloadDigest) {
1310
+ result = { authorized: false, reason: checked.reason };
1311
+ return result;
1312
+ }
1313
+ const receiptPath = goalConductorActivationReceiptPath(checked.permitId);
1314
+ assurePrivateDirectory(dirname(dirname(receiptPath)), home);
1315
+ assurePrivateDirectory(dirname(receiptPath), home);
1316
+ const nonceDigest = sha256(parsed.payload.nonce);
1317
+ const nonceReceiptPath = goalConductorActivationNonceReceiptPath(nonceDigest);
1318
+ assurePrivateDirectory(dirname(nonceReceiptPath), home);
1319
+ const receipt = {
1320
+ schemaVersion: 1,
1321
+ state: 'consumed-before-permit-unlink',
1322
+ action: 'goal-conductor-proposal-once',
1323
+ permitId: checked.permitId,
1324
+ keyId: parsed.payload.keyId,
1325
+ payloadDigest: checked.payloadDigest,
1326
+ configDigest: context.configDigest,
1327
+ goalId: target.goalId,
1328
+ milestoneId: target.milestoneId,
1329
+ goalDigest: target.goalDigest,
1330
+ consumedAt: new Date(context.nowMs).toISOString(),
1331
+ };
1332
+ try {
1333
+ persistReceipt(nonceReceiptPath, { ...receipt, index: 'nonce', nonceDigest }, home);
1334
+ persistReceipt(receiptPath, receipt, home);
1335
+ }
1336
+ catch (error) {
1337
+ result = {
1338
+ authorized: false,
1339
+ reason: error.code === 'EEXIST'
1340
+ ? 'goal-conductor-permit-already-consumed'
1341
+ : 'goal-conductor-receipt-persistence-failed',
1342
+ permitId: checked.permitId,
1343
+ receiptPath,
1344
+ };
1345
+ return result;
1346
+ }
1347
+ try {
1348
+ afterReceiptPersisted?.();
1349
+ }
1350
+ catch {
1351
+ result = {
1352
+ authorized: false, reason: 'goal-conductor-activation-interrupted-after-durable-receipt',
1353
+ permitId: checked.permitId, receiptPath,
1354
+ };
1355
+ return result;
1356
+ }
1357
+ const opened = fstatSync(pinned.fd, { bigint: true });
1358
+ const named = lstatSync(permitPath, { bigint: true });
1359
+ if (!sameFileSnapshot(pinned.stat, opened) || !sameFileSnapshot(opened, named)) {
1360
+ result = {
1361
+ authorized: false, reason: 'goal-conductor-permit-changed-before-unlink',
1362
+ permitId: checked.permitId, receiptPath,
1363
+ };
1364
+ return result;
1365
+ }
1366
+ unlinkSync(permitPath);
1367
+ fsyncDirectory(dirname(permitPath));
1368
+ result = {
1369
+ authorized: true,
1370
+ reason: 'goal-conductor-proposal-once-activation-authorized',
1371
+ permitId: checked.permitId,
1372
+ receiptPath,
1373
+ ...(mayMintCapability ? {
1374
+ capability: mintGoalConductorCapability(checked.permitId, target, () => {
1375
+ const claimContext = { ...collectRuntimeContext(configSnapshot), target };
1376
+ return verifyGoalConductorActivationPermit(parsed, claimContext, roots).ok;
1377
+ }),
1378
+ configSnapshot,
1379
+ } : {}),
1380
+ };
1381
+ return result;
1382
+ }
1383
+ catch (error) {
1384
+ result = {
1385
+ authorized: false,
1386
+ reason: error.code === 'ENOENT'
1387
+ ? 'goal-conductor-activation-permit-missing'
1388
+ : 'goal-conductor-permit-consumption-failed',
1389
+ };
1390
+ return result;
1391
+ }
1392
+ finally {
1393
+ if (pinned) {
1394
+ try {
1395
+ closeSync(pinned.fd);
1396
+ }
1397
+ catch {
1398
+ result.authorized = false;
1399
+ result.reason = 'goal-conductor-permit-close-failed';
1400
+ delete result.capability;
1401
+ }
1402
+ }
1403
+ if (!releaseLocalStoreLock(lock)) {
1404
+ result.authorized = false;
1405
+ result.reason = 'goal-conductor-permit-lock-release-failed';
1406
+ delete result.capability;
1407
+ }
1408
+ }
1409
+ }
1410
+ export function consumeGoalConductorActivationPermit(cfg, target) {
1411
+ return consumeGoalConductorWithAuthority(cfg, target, GOAL_CONDUCTOR_ACTIVATION_TRUST_ROOTS, undefined, undefined, true);
1412
+ }
1413
+ export function consumeGoalConductorActivationPermitForVerification(cfg, target, options) {
1414
+ return consumeGoalConductorWithAuthority(cfg, target, options.trustRoots, options.context, options.afterReceiptPersisted, false);
1415
+ }
1019
1416
  //# sourceMappingURL=activation-permit.js.map