@dsh-enhanced/assistant-skills 0.1.31 → 0.1.34

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 (66) hide show
  1. package/README.md +56 -9
  2. package/lib/definition.d.ts +53 -2
  3. package/lib/definition.d.ts.map +1 -1
  4. package/lib/definition.js +96 -0
  5. package/lib/definition.js.map +1 -1
  6. package/lib/delegated-arm.d.ts +47 -0
  7. package/lib/delegated-arm.d.ts.map +1 -0
  8. package/lib/delegated-arm.js +26 -0
  9. package/lib/delegated-arm.js.map +1 -0
  10. package/lib/external-holdout.js +1 -1
  11. package/lib/external-holdout.js.map +1 -1
  12. package/lib/holdout-authority.d.ts +1 -122
  13. package/lib/holdout-authority.d.ts.map +1 -1
  14. package/lib/holdout-authority.js +5 -262
  15. package/lib/holdout-authority.js.map +1 -1
  16. package/lib/holdout-cli.d.ts.map +1 -1
  17. package/lib/holdout-cli.js +2 -0
  18. package/lib/holdout-cli.js.map +1 -1
  19. package/lib/holdout-qualification.d.ts +11 -3
  20. package/lib/holdout-qualification.d.ts.map +1 -1
  21. package/lib/holdout-qualification.js +19 -9
  22. package/lib/holdout-qualification.js.map +1 -1
  23. package/lib/index.d.ts +10 -1
  24. package/lib/index.d.ts.map +1 -1
  25. package/lib/index.js +4 -0
  26. package/lib/index.js.map +1 -1
  27. package/lib/prospective-holdout.d.ts +1 -34
  28. package/lib/prospective-holdout.d.ts.map +1 -1
  29. package/lib/prospective-holdout.js +4 -253
  30. package/lib/prospective-holdout.js.map +1 -1
  31. package/lib/repair-agent.d.ts +11 -2
  32. package/lib/repair-agent.d.ts.map +1 -1
  33. package/lib/repair-agent.js +178 -17
  34. package/lib/repair-agent.js.map +1 -1
  35. package/lib/repair-process.d.ts +20 -0
  36. package/lib/repair-process.d.ts.map +1 -0
  37. package/lib/repair-process.js +92 -0
  38. package/lib/repair-process.js.map +1 -0
  39. package/lib/repair-profile.d.ts +6 -2
  40. package/lib/repair-profile.d.ts.map +1 -1
  41. package/lib/repair-profile.js +10 -4
  42. package/lib/repair-profile.js.map +1 -1
  43. package/lib/repair-runtime.d.ts +2 -0
  44. package/lib/repair-runtime.d.ts.map +1 -1
  45. package/lib/repair-runtime.js +7 -1
  46. package/lib/repair-runtime.js.map +1 -1
  47. package/lib/repair-workspace-path.d.ts +17 -0
  48. package/lib/repair-workspace-path.d.ts.map +1 -0
  49. package/lib/repair-workspace-path.js +84 -0
  50. package/lib/repair-workspace-path.js.map +1 -0
  51. package/lib/replay.d.ts.map +1 -1
  52. package/lib/replay.js +17 -2
  53. package/lib/replay.js.map +1 -1
  54. package/lib/service.d.ts +271 -2
  55. package/lib/service.d.ts.map +1 -1
  56. package/lib/service.js +473 -35
  57. package/lib/service.js.map +1 -1
  58. package/lib/store.d.ts +47 -0
  59. package/lib/store.d.ts.map +1 -1
  60. package/lib/store.js +262 -6
  61. package/lib/store.js.map +1 -1
  62. package/lib/version.d.ts +1 -1
  63. package/lib/version.js +1 -1
  64. package/lib/watch-proof.js +2 -2
  65. package/lib/watch-proof.js.map +1 -1
  66. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"prospective-holdout.js","sourceRoot":"","sources":["../src/prospective-holdout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prospective-holdout.js","sourceRoot":"","sources":["../src/prospective-holdout.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,8FAA8F;AAC9F,mGAAmG;AACnG,cAAc,4DAA4D,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import type { Context } from '@deepseek-ai/cordis';
2
2
  import { type Agent } from '@deepseek-ai/dsh-agent';
3
- import type { GoalScope, HostFailureTriggerEvidence } from '@dsh-enhanced/assistant-goals';
3
+ import type { GoalScope, HostFailureTriggerEvidence, OwnerAuthorizedRepairResumeInput } from '@dsh-enhanced/assistant-goals';
4
+ import type { SkillStore } from './store.js';
4
5
  export interface OwnerRepairAgentInput {
5
6
  id: string;
6
7
  authorizationDigest: string;
@@ -12,6 +13,7 @@ export interface OwnerRepairAgentInput {
12
13
  expiresAt: number;
13
14
  provider: string;
14
15
  model: string;
16
+ reasoningEffort?: string;
15
17
  maxModelCalls: number;
16
18
  maxToolCalls: number;
17
19
  maxOutputTokens: number;
@@ -31,12 +33,19 @@ export interface OwnerRepairAgentInput {
31
33
  export declare class OwnerRepairAgentRuntime {
32
34
  #private;
33
35
  private readonly ctx;
34
- constructor(ctx: Context);
36
+ private readonly store?;
37
+ constructor(ctx: Context, store?: SkillStore | undefined);
35
38
  get(sessionId: string): Agent | undefined;
39
+ /** A live process-local capability backed by the current durable execution fence. */
40
+ ownsResume(input: OwnerAuthorizedRepairResumeInput, callback: () => void): boolean;
36
41
  create(input: OwnerRepairAgentInput, signal?: AbortSignal): Promise<{
37
42
  sessionId: string;
38
43
  goalId: string;
39
44
  }>;
45
+ resume(input: OwnerRepairAgentInput, repair: OwnerAuthorizedRepairResumeInput['repair'], signal?: AbortSignal): Promise<{
46
+ sessionId: string;
47
+ goalId: string;
48
+ }>;
40
49
  closeSession(sessionId: string): Promise<void>;
41
50
  closeAuthorization(authorizationId: string): Promise<void>;
42
51
  dispose(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"repair-agent.d.ts","sourceRoot":"","sources":["../src/repair-agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAyB,KAAK,KAAK,EAAoB,MAAM,wBAAwB,CAAA;AAG5F,OAAO,KAAK,EAAE,SAAS,EAAE,0BAA0B,EAA8B,MAAM,+BAA+B,CAAA;AAItH,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,mBAAmB,EAAE,MAAM,CAAA;IAC3B,KAAK,EAAE,SAAS,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,0BAA0B,CAAA;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAA;IAC9C,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B;AAuBD;;;;GAIG;AACH,qBAAa,uBAAuB;;IAUtB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,OAAO;IAIzC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAEnC,MAAM,CAAC,KAAK,EAAE,qBAAqB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAwH1G,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9C,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAmB/B"}
1
+ {"version":3,"file":"repair-agent.d.ts","sourceRoot":"","sources":["../src/repair-agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAyB,KAAK,KAAK,EAAoB,MAAM,wBAAwB,CAAA;AAG5F,OAAO,KAAK,EAAE,SAAS,EAAE,0BAA0B,EAA8B,gCAAgC,EAAE,MAAM,+BAA+B,CAAA;AAGxJ,OAAO,KAAK,EAAwB,UAAU,EAAE,MAAM,YAAY,CAAA;AAGlE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,mBAAmB,EAAE,MAAM,CAAA;IAC3B,KAAK,EAAE,SAAS,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,0BAA0B,CAAA;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAA;IAC9C,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B;AAwBD;;;;GAIG;AACH,qBAAa,uBAAuB;;IActB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAW,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAArC,GAAG,EAAE,OAAO,EAAmB,KAAK,CAAC,EAAE,UAAU,YAAA;IAI9E,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAEzC,qFAAqF;IACrF,UAAU,CAAC,KAAK,EAAE,gCAAgC,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO;IA6B5E,MAAM,CAAC,KAAK,EAAE,qBAAqB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAa1G,MAAM,CAAC,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,gCAAgC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA+K9J,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC9C,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAiB/B"}
@@ -1,14 +1,16 @@
1
- import { createHash } from 'node:crypto';
1
+ import { createHash, randomUUID } from 'node:crypto';
2
2
  import { acceptanceDigest } from '@dsh-enhanced/task-acceptance-contract';
3
3
  import { installModelSelection } from '@deepseek-ai/dsh-agent';
4
- import {} from '@deepseek-ai/dsh-llm';
4
+ import { ReasoningEffortId } from '@deepseek-ai/dsh-llm';
5
5
  import { SessionId } from '@deepseek-ai/dsh-session';
6
+ import { assertRepairWorkspacePath, repairFilePath } from './repair-workspace-path.js';
6
7
  const validText = (value, max = 4_096) => typeof value === 'string' && value.length > 0 && value.length <= max;
7
8
  const validCount = (value, min = 1) => typeof value === 'number' && Number.isSafeInteger(value) && value >= min && value <= 1_000_000_000;
8
9
  const sessionIdFor = (authorizationId) => SessionId(`owner-repair-${createHash('sha256').update(authorizationId).digest('hex').slice(0, 40)}`);
9
10
  function validate(input) {
10
11
  if (!validText(input.id) || !validText(input.authorizationDigest) || !validText(input.ownerRouteId)
11
12
  || !validText(input.objective, 16_384) || !validText(input.provider) || !validText(input.model)
13
+ || input.reasoningEffort !== undefined && !validText(input.reasoningEffort, 256)
12
14
  || !validCount(input.maxGoalRounds) || !validCount(input.maxModelCalls) || !validCount(input.maxToolCalls, 0)
13
15
  || !validCount(input.maxOutputTokens) || !validCount(input.maxDurationMs) || !Number.isSafeInteger(input.expiresAt)
14
16
  || input.expiresAt <= Date.now() || typeof input.assertCurrent !== 'function'
@@ -27,19 +29,63 @@ function validate(input) {
27
29
  */
28
30
  export class OwnerRepairAgentRuntime {
29
31
  ctx;
32
+ store;
30
33
  #handles = new Map();
31
34
  #attempted = new Set();
32
35
  #toolSchemaDigests = new Map();
33
36
  #controllers = new Map();
34
37
  #authorizationSessions = new Map();
35
38
  #inflight = new Map();
39
+ #leases = new Map();
40
+ #resumeProofs = new Map();
41
+ #settlements = new Map();
42
+ #closing = new Map();
36
43
  #disposeFlight;
37
44
  #disposed = false;
38
- constructor(ctx) {
45
+ constructor(ctx, store) {
39
46
  this.ctx = ctx;
47
+ this.store = store;
40
48
  ctx.effect(() => () => this.dispose(), 'assistant-skills.owner-repair-agents');
41
49
  }
42
50
  get(sessionId) { return this.#handles.get(sessionId)?.agent; }
51
+ /** A live process-local capability backed by the current durable execution fence. */
52
+ ownsResume(input, callback) {
53
+ const proof = this.#resumeProofs.get(input.repair.sessionId);
54
+ if (!proof || proof.callback !== callback || acceptanceDigest(proof.input) !== acceptanceDigest(input)
55
+ || !this.#handles.has(input.repair.sessionId))
56
+ return false;
57
+ try {
58
+ this.#assertLease(input.repair.sessionId);
59
+ callback();
60
+ return true;
61
+ }
62
+ catch {
63
+ return false;
64
+ }
65
+ }
66
+ #assertLease(key) {
67
+ const held = this.#leases.get(key);
68
+ if (this.store && !held)
69
+ throw new Error('assistant-skills: repair execution fence missing');
70
+ if (held)
71
+ this.store.assertRepairExecution(held.scope, held.lease);
72
+ }
73
+ #claim(input, key, recover) {
74
+ if (recover && !this.store)
75
+ throw new Error('assistant-skills: durable repair recovery unavailable');
76
+ const previous = recover ? this.store.inspectRepairExecution(input.scope, input.id, input.iteration ?? 1) : undefined;
77
+ const deadlineAt = previous?.deadlineAt ?? Math.min(input.expiresAt, Date.now() + input.maxDurationMs);
78
+ if (!this.store)
79
+ return deadlineAt;
80
+ const lease = this.store.claimRepairExecution(input.scope, input.id, input.iteration ?? 1, key, randomUUID(), deadlineAt, { recover });
81
+ this.#leases.set(key, { scope: input.scope, lease });
82
+ return lease.deadlineAt;
83
+ }
84
+ #effect(key, kind) {
85
+ this.#assertLease(key);
86
+ const held = this.#leases.get(key);
87
+ return held ? this.store.beginRepairEffect(held.scope, held.lease, kind) : () => { };
88
+ }
43
89
  async create(input, signal) {
44
90
  if (this.#disposed)
45
91
  throw new Error('assistant-skills: owner repair Agent runtime disposed');
@@ -62,10 +108,32 @@ export class OwnerRepairAgentRuntime {
62
108
  this.#inflight.delete(key);
63
109
  }
64
110
  }
65
- async #create(sessionId, key, input, signal) {
111
+ async resume(input, repair, signal) {
112
+ if (this.#disposed)
113
+ throw new Error('assistant-skills: owner repair Agent runtime disposed');
114
+ validate(input);
115
+ input.assertCurrent();
116
+ const sessionId = sessionIdFor(`${input.id}:${input.iteration ?? 1}`), key = String(sessionId);
117
+ if (key !== repair.sessionId || this.#attempted.has(key))
118
+ throw new Error('assistant-skills: exact repair recovery is unavailable');
119
+ this.#attempted.add(key);
120
+ const sessions = this.#authorizationSessions.get(input.id) ?? new Set();
121
+ sessions.add(key);
122
+ this.#authorizationSessions.set(input.id, sessions);
123
+ const resuming = this.#create(sessionId, key, input, signal, repair);
124
+ this.#inflight.set(key, resuming);
125
+ try {
126
+ return await resuming;
127
+ }
128
+ finally {
129
+ this.#inflight.delete(key);
130
+ }
131
+ }
132
+ async #create(sessionId, key, input, signal, recovered) {
133
+ const deadlineAt = this.#claim(input, key, recovered !== undefined);
66
134
  const deadline = new AbortController();
67
135
  this.#controllers.set(key, deadline);
68
- const timer = setTimeout(() => deadline.abort(new Error('assistant-skills: owner repair Agent deadline exceeded')), Math.min(input.maxDurationMs, input.expiresAt - Date.now()));
136
+ const timer = setTimeout(() => deadline.abort(new Error('assistant-skills: owner repair Agent deadline exceeded')), Math.max(0, deadlineAt - Date.now()));
69
137
  timer.unref?.();
70
138
  const combined = signal === undefined ? deadline.signal : AbortSignal.any([signal, deadline.signal]);
71
139
  let handle;
@@ -76,14 +144,15 @@ export class OwnerRepairAgentRuntime {
76
144
  const policy = this.ctx.get('assistantPolicy', false);
77
145
  if (agents === undefined || goals === undefined || policy === undefined)
78
146
  throw new Error('assistant-skills: repair Agent dependencies unavailable');
79
- handle = await agents.create({ sessionId, meta: { cwd: input.scope.workspace, agentPreset: input.scope.preset },
80
- agentOptions: { provider: input.provider, model: input.model, maxTokens: input.maxOutputTokens }, signal: combined,
81
- setup: async (agentCtx) => {
82
- const agent = agentCtx.agent;
147
+ const options = {
148
+ agentOptions: { provider: input.provider, model: input.model, ...(input.reasoningEffort === undefined ? {} : { reasoningEffort: ReasoningEffortId(input.reasoningEffort) }), maxTokens: input.maxOutputTokens }, signal: combined,
149
+ setup: async (agentCtx, preparedAgent) => {
150
+ const agent = preparedAgent ?? agentCtx.agent;
83
151
  if (agent === undefined)
84
152
  throw new Error('assistant-skills: unpublished repair Agent is unavailable');
85
153
  input.assertCurrent();
86
154
  combined.throwIfAborted();
155
+ this.#assertLease(key);
87
156
  // Establish background authority and cancellation before mounting preset effects.
88
157
  this.#setupRepairAgent(agentCtx, agent, input, combined, timer);
89
158
  const presets = this.ctx.get('agentPresets', false);
@@ -99,9 +168,13 @@ export class OwnerRepairAgentRuntime {
99
168
  combined.throwIfAborted();
100
169
  this.#checkRepairTools(agentCtx, agent, input);
101
170
  },
102
- });
171
+ };
172
+ handle = recovered
173
+ ? await agents.resume({ ...options, resumeSessionId: sessionId })
174
+ : await agents.create({ ...options, sessionId, meta: { cwd: input.scope.workspace, agentPreset: input.scope.preset } });
103
175
  input.assertCurrent();
104
176
  combined.throwIfAborted();
177
+ this.#assertLease(key);
105
178
  this.#handles.set(key, handle);
106
179
  const repair = { authorizationId: input.id, authorizationDigest: input.authorizationDigest,
107
180
  ownerRouteId: input.ownerRouteId, scope: input.scope, trigger: input.trigger, objective: input.objective,
@@ -109,7 +182,19 @@ export class OwnerRepairAgentRuntime {
109
182
  const currentGoals = this.ctx.get('assistantGoals', false);
110
183
  if (currentGoals === undefined)
111
184
  throw new Error('assistant-skills: repair Goals service changed');
112
- const record = await currentGoals.startOwnerAuthorizedRepair(handle.agent, repair, input.assertCurrent);
185
+ const resumed = recovered === undefined ? undefined : { ...repair, repair: recovered };
186
+ if (resumed)
187
+ this.#resumeProofs.set(key, { input: resumed, callback: input.assertCurrent });
188
+ const record = resumed === undefined
189
+ ? await currentGoals.startOwnerAuthorizedRepair(handle.agent, repair, input.assertCurrent)
190
+ : await currentGoals.resumeOwnerAuthorizedRepair(handle.agent, resumed, input.assertCurrent);
191
+ // A recoverable execution must retain the native goal and its identity in
192
+ // the Session log, not only in the independent business-goal ledger.
193
+ if (this.store)
194
+ await this.ctx.get('sessions').flush(handle.agent.session);
195
+ input.assertCurrent();
196
+ combined.throwIfAborted();
197
+ this.#assertLease(key);
113
198
  retained = true;
114
199
  return { sessionId: key, goalId: record.id };
115
200
  }
@@ -117,8 +202,13 @@ export class OwnerRepairAgentRuntime {
117
202
  deadline.abort(new Error('assistant-skills: repair Agent creation failed'));
118
203
  this.#handles.delete(key);
119
204
  this.#toolSchemaDigests.delete(key);
120
- if (handle !== undefined)
205
+ this.#resumeProofs.delete(key);
206
+ // A rejected factory can still have an abort-raced load. Do not release
207
+ // its durable fence without an observable handle and completed drain.
208
+ if (handle !== undefined) {
121
209
  await handle.dispose();
210
+ await this.#release(key);
211
+ }
122
212
  throw error;
123
213
  }
124
214
  finally {
@@ -149,9 +239,14 @@ export class OwnerRepairAgentRuntime {
149
239
  if (policy === undefined)
150
240
  throw new Error('assistant-skills: repair policy changed');
151
241
  agentCtx.effect(() => policy.bindInitiator(agent, 'background', input.scope.principalId), 'assistant-skills.owner-repair-initiator');
152
- agentCtx.effect(() => installModelSelection(agentCtx, { current: { provider: input.provider, model: input.model }, assembled: undefined }), 'assistant-skills.owner-repair-model');
242
+ agentCtx.effect(() => installModelSelection(agentCtx, { current: { provider: input.provider, model: input.model,
243
+ ...(input.reasoningEffort === undefined ? {} : { reasoningEffort: ReasoningEffortId(input.reasoningEffort) }) }, assembled: undefined }), 'assistant-skills.owner-repair-model');
153
244
  const allowed = new Set(input.allowedTools);
154
245
  const schemaDigests = this.#toolSchemaDigests;
246
+ const key = String(agent.session.id);
247
+ const assertLease = () => this.#assertLease(key);
248
+ const beginModel = () => this.#effect(key, 'model');
249
+ const toolsAwaitingLog = new Map();
155
250
  agentCtx.on('system-prompt/assemble', async (_assembly, context, next) => {
156
251
  const assembly = await next();
157
252
  if (context.agent !== agent)
@@ -169,19 +264,30 @@ export class OwnerRepairAgentRuntime {
169
264
  }
170
265
  input.assertCurrent();
171
266
  combined.throwIfAborted();
172
- if (options.provider !== input.provider || options.model !== input.model || options.maxTokens === undefined || options.maxTokens > input.maxOutputTokens || acceptanceDigest(options.tools ?? []) !== schemaDigests.get(String(agent.session.id)) || calls++ >= input.maxModelCalls) {
267
+ options.signal?.throwIfAborted();
268
+ assertLease();
269
+ if (options.provider !== input.provider || options.model !== input.model
270
+ || input.reasoningEffort !== undefined && options.reasoningEffort !== input.reasoningEffort
271
+ || options.maxTokens === undefined || options.maxTokens > input.maxOutputTokens || acceptanceDigest(options.tools ?? []) !== schemaDigests.get(String(agent.session.id)) || calls++ >= input.maxModelCalls) {
173
272
  agent.cancel({ kind: 'hook', reason: 'assistant-skills-owner-repair-model-limit' });
174
273
  throw new Error('assistant-skills: owner repair model request rejected');
175
274
  }
176
275
  input.recordUsage?.('model');
276
+ const settled = beginModel();
177
277
  for await (const chunk of next()) {
178
278
  combined.throwIfAborted();
179
279
  yield chunk;
180
280
  }
281
+ // Rejection/abort retains the pending effect: a provider may still own a
282
+ // subprocess or submitted request, and Host death alone cannot settle it.
283
+ combined.throwIfAborted();
284
+ options.signal?.throwIfAborted();
285
+ settled();
181
286
  });
182
287
  agentCtx.tools.guard(execution => {
183
288
  input.assertCurrent();
184
289
  combined.throwIfAborted();
290
+ this.#assertLease(key);
185
291
  if (!allowed.has(execution.name) || toolCalls >= input.maxToolCalls) {
186
292
  agent.cancel({ kind: 'hook', reason: 'assistant-skills-owner-repair-tool-limit' });
187
293
  return 'assistant-skills: owner repair tool request rejected';
@@ -190,11 +296,66 @@ export class OwnerRepairAgentRuntime {
190
296
  input.recordUsage?.('tool');
191
297
  return undefined;
192
298
  });
299
+ agentCtx.on('tools/execute', async (execution, next) => {
300
+ if (execution.agent !== agent)
301
+ return await next();
302
+ input.assertCurrent();
303
+ combined.throwIfAborted();
304
+ if (execution.name === 'read' || execution.name === 'write' || execution.name === 'edit' || execution.name === 'read_image') {
305
+ await assertRepairWorkspacePath(input.scope.workspace, repairFilePath(execution.name, execution.arguments));
306
+ input.assertCurrent();
307
+ combined.throwIfAborted();
308
+ this.#assertLease(key);
309
+ }
310
+ const settled = this.#effect(key, 'tool');
311
+ const result = await next();
312
+ if (!result.isError && !execution.signal.aborted)
313
+ toolsAwaitingLog.set(String(execution.callId), settled);
314
+ // Do not clear the durable intent until the corresponding tool result
315
+ // has also reached the persistent Session. Unknown results retain it.
316
+ return result;
317
+ }, { prepend: true });
318
+ agentCtx.on('session/event', (session, event) => {
319
+ if (session !== agent.session || event.type !== 'tool/result' || event.data.message.source?.kind !== 'tool')
320
+ return;
321
+ const callId = String(event.data.message.source.callId), settled = toolsAwaitingLog.get(callId);
322
+ if (!settled)
323
+ return;
324
+ toolsAwaitingLog.delete(callId);
325
+ const pending = this.#settlements.get(key) ?? new Set();
326
+ this.#settlements.set(key, pending);
327
+ const flush = Promise.resolve().then(async () => {
328
+ await this.ctx.get('sessions').flush(session);
329
+ settled();
330
+ }).catch(() => { agent.cancel({ kind: 'hook', reason: 'assistant-skills-repair-checkpoint-unconfirmed' }); }).finally(() => pending.delete(flush));
331
+ pending.add(flush);
332
+ });
193
333
  const abort = () => agent.cancel({ kind: 'hook', reason: 'assistant-skills-owner-repair-expired' });
194
334
  combined.addEventListener('abort', abort, { once: true });
195
335
  agentCtx.effect(() => () => { clearTimeout(timer); combined.removeEventListener('abort', abort); }, 'assistant-skills.owner-repair-deadline');
196
336
  }
197
337
  async closeSession(sessionId) {
338
+ const existing = this.#closing.get(sessionId);
339
+ if (existing)
340
+ return await existing;
341
+ const closing = this.#closeSession(sessionId).finally(() => this.#closing.delete(sessionId));
342
+ this.#closing.set(sessionId, closing);
343
+ return await closing;
344
+ }
345
+ async #release(key) {
346
+ await Promise.allSettled(this.#settlements.get(key) ?? []);
347
+ this.#settlements.delete(key);
348
+ const held = this.#leases.get(key);
349
+ if (held) {
350
+ const current = this.store.inspectRepairExecution(held.scope, held.lease.authorizationId, held.lease.iteration);
351
+ // Unconfirmed external effects keep the durable fence occupied. Native
352
+ // disposal cannot turn an aborted provider/tool into a cleanup receipt.
353
+ if (current && current.pendingModel === 0 && current.pendingTool === 0)
354
+ this.store.releaseRepairExecution(held.scope, held.lease);
355
+ }
356
+ this.#leases.delete(key);
357
+ }
358
+ async #closeSession(sessionId) {
198
359
  this.#controllers.get(sessionId)?.abort(new Error('assistant-skills: repair Agent closed'));
199
360
  const creation = this.#inflight.get(sessionId);
200
361
  if (creation !== undefined)
@@ -208,6 +369,8 @@ export class OwnerRepairAgentRuntime {
208
369
  this.#handles.delete(sessionId);
209
370
  this.#controllers.delete(sessionId);
210
371
  await handle.dispose();
372
+ await this.#release(sessionId);
373
+ this.#resumeProofs.delete(sessionId);
211
374
  this.#toolSchemaDigests.delete(sessionId);
212
375
  }
213
376
  async closeAuthorization(authorizationId) {
@@ -230,9 +393,7 @@ export class OwnerRepairAgentRuntime {
230
393
  this.#controllers.clear();
231
394
  this.#toolSchemaDigests.clear();
232
395
  this.#authorizationSessions.clear();
233
- const handles = [...this.#handles.entries()];
234
- this.#handles.clear();
235
- const disposalResults = await Promise.allSettled(handles.map(([, handle]) => handle.dispose()));
396
+ const disposalResults = await Promise.allSettled([...this.#handles.keys()].map(key => this.closeSession(key)));
236
397
  const errors = disposalResults.flatMap(result => result.status === 'rejected' ? [result.reason] : []);
237
398
  if (errors.length)
238
399
  throw new AggregateError(errors, 'assistant-skills: repair Agent disposal failed');
@@ -1 +1 @@
1
- {"version":3,"file":"repair-agent.js","sourceRoot":"","sources":["../src/repair-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repair-agent.js","sourceRoot":"","sources":["../src/repair-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export interface RepairProcessWitness {
2
+ bootId: string;
3
+ pid: number;
4
+ startTicks: string;
5
+ pidNamespace: string;
6
+ }
7
+ export type RepairProcessProbe = 'gone' | 'present' | 'unavailable';
8
+ /**
9
+ * Non-Linux gets a process-local identity solely for released same-process
10
+ * reattachment. It cannot prove a dead prior process, so cold recovery stays
11
+ * conservatively unavailable there.
12
+ */
13
+ export declare function currentRepairProcess(): RepairProcessWitness | undefined;
14
+ /**
15
+ * Conservative two-read process liveness proof. "gone" is deliberately
16
+ * narrow: permission errors, zombies, malformed proc data and races are all
17
+ * unavailable, never evidence that a prior tool/model request settled.
18
+ */
19
+ export declare function probeRepairProcess(witness: RepairProcessWitness): RepairProcessProbe;
20
+ //# sourceMappingURL=repair-process.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair-process.d.ts","sourceRoot":"","sources":["../src/repair-process.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IAAG,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE;AAC/G,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,CAAA;AAiCnE;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,oBAAoB,GAAG,SAAS,CAIvE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,GAAG,kBAAkB,CAuBpF"}
@@ -0,0 +1,92 @@
1
+ import { readFileSync, statSync } from 'node:fs';
2
+ import { randomUUID } from 'node:crypto';
3
+ const boot = /^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/u;
4
+ const ticks = /^[1-9][0-9]{0,63}$/u;
5
+ const localBootId = randomUUID();
6
+ const namespace = /^(?:linux:[0-9]{1,32}:[0-9]{1,32}|local:[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12})$/u;
7
+ function currentBootId() {
8
+ try {
9
+ const value = readFileSync('/proc/sys/kernel/random/boot_id', 'utf8').trim().toLowerCase();
10
+ return boot.test(value) ? value : undefined;
11
+ }
12
+ catch {
13
+ return undefined;
14
+ }
15
+ }
16
+ function startTicks(pid) {
17
+ try {
18
+ const raw = readFileSync(`/proc/${pid}/stat`, 'utf8'), close = raw.lastIndexOf(') ');
19
+ if (close < 0)
20
+ return undefined;
21
+ const fields = raw.slice(close + 2).trim().split(/\s+/u);
22
+ return fields[0] !== 'Z' && ticks.test(fields[19] ?? '') ? fields[19] : undefined;
23
+ }
24
+ catch (error) {
25
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT')
26
+ return '';
27
+ return undefined;
28
+ }
29
+ }
30
+ function currentPidNamespace() {
31
+ try {
32
+ // stat follows the proc symlink to the namespace inode; lstat would only
33
+ // identify this process's per-procfs symlink entry.
34
+ const stat = statSync('/proc/self/ns/pid');
35
+ const value = `linux:${stat.dev}:${stat.ino}`;
36
+ return namespace.test(value) ? value : undefined;
37
+ }
38
+ catch {
39
+ return undefined;
40
+ }
41
+ }
42
+ /**
43
+ * Non-Linux gets a process-local identity solely for released same-process
44
+ * reattachment. It cannot prove a dead prior process, so cold recovery stays
45
+ * conservatively unavailable there.
46
+ */
47
+ export function currentRepairProcess() {
48
+ const bootId = currentBootId(), pidNamespace = currentPidNamespace(), start = bootId && pidNamespace ? startTicks(process.pid) : undefined;
49
+ if (bootId && pidNamespace && start)
50
+ return { bootId, pid: process.pid, startTicks: start, pidNamespace };
51
+ return process.platform === 'linux' ? undefined : { bootId: localBootId, pid: process.pid, startTicks: String(process.pid), pidNamespace: `local:${localBootId}` };
52
+ }
53
+ /**
54
+ * Conservative two-read process liveness proof. "gone" is deliberately
55
+ * narrow: permission errors, zombies, malformed proc data and races are all
56
+ * unavailable, never evidence that a prior tool/model request settled.
57
+ */
58
+ export function probeRepairProcess(witness) {
59
+ if (!boot.test(witness.bootId) || !namespace.test(witness.pidNamespace) || !Number.isSafeInteger(witness.pid) || witness.pid < 1 || !ticks.test(witness.startTicks))
60
+ return 'unavailable';
61
+ // PID values are namespace-relative. A host that cannot prove it observes
62
+ // the same namespace cannot turn a missing/reused PID into a death proof.
63
+ const currentNamespace = currentPidNamespace();
64
+ if (!currentNamespace || currentNamespace !== witness.pidNamespace)
65
+ return 'unavailable';
66
+ for (let attempt = 0; attempt < 2; attempt++) {
67
+ const bootId = currentBootId();
68
+ if (!bootId)
69
+ return 'unavailable';
70
+ if (bootId !== witness.bootId)
71
+ continue;
72
+ const start = startTicks(witness.pid);
73
+ if (start === undefined)
74
+ return 'unavailable';
75
+ if (start !== '' && start === witness.startTicks)
76
+ return 'present';
77
+ if (start !== '' && start !== witness.startTicks)
78
+ continue;
79
+ }
80
+ // Both reads must agree on an absent process or a different generation.
81
+ const firstBoot = currentBootId(), first = firstBoot ? startTicks(witness.pid) : undefined;
82
+ const secondBoot = currentBootId(), second = secondBoot ? startTicks(witness.pid) : undefined;
83
+ if (!firstBoot || !secondBoot || first === undefined || second === undefined)
84
+ return 'unavailable';
85
+ if (firstBoot !== witness.bootId && secondBoot !== witness.bootId)
86
+ return 'gone';
87
+ if (firstBoot === witness.bootId && secondBoot === witness.bootId
88
+ && ((first === '' && second === '') || (first !== '' && second !== '' && first !== witness.startTicks && second !== witness.startTicks)))
89
+ return 'gone';
90
+ return 'unavailable';
91
+ }
92
+ //# sourceMappingURL=repair-process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair-process.js","sourceRoot":"","sources":["../src/repair-process.ts"],"names":[],"mappings":"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"}