dsh-super-code 0.3.10 → 0.3.11

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 (95) hide show
  1. package/README.en.md +4 -4
  2. package/README.md +4 -4
  3. package/client/index.js +106 -47
  4. package/cordis.patch.yml +1 -1
  5. package/docs/Changelog.md +43 -0
  6. package/docs/Compatibility.md +13 -0
  7. package/docs/UsageGuide.md +30 -8
  8. package/docs/en/Changelog.md +43 -0
  9. package/docs/en/Compatibility.md +13 -0
  10. package/docs/en/UsageGuide.md +30 -8
  11. package/lib/connection/directories.d.ts.map +1 -1
  12. package/lib/connection/directories.js +14 -5
  13. package/lib/connection/directories.js.map +1 -1
  14. package/lib/connection/guidance.d.ts.map +1 -1
  15. package/lib/connection/guidance.js +7 -0
  16. package/lib/connection/guidance.js.map +1 -1
  17. package/lib/connection/http.d.ts.map +1 -1
  18. package/lib/connection/http.js +59 -30
  19. package/lib/connection/http.js.map +1 -1
  20. package/lib/connection/service.d.ts +3 -0
  21. package/lib/connection/service.d.ts.map +1 -1
  22. package/lib/connection/service.js +82 -33
  23. package/lib/connection/service.js.map +1 -1
  24. package/lib/connection/store.d.ts +2 -0
  25. package/lib/connection/store.d.ts.map +1 -1
  26. package/lib/connection/store.js +95 -30
  27. package/lib/connection/store.js.map +1 -1
  28. package/lib/connection/tasks.d.ts +6 -3
  29. package/lib/connection/tasks.d.ts.map +1 -1
  30. package/lib/connection/tasks.js +125 -53
  31. package/lib/connection/tasks.js.map +1 -1
  32. package/lib/connection/types.d.ts +1 -0
  33. package/lib/connection/types.d.ts.map +1 -1
  34. package/lib/connection/types.js.map +1 -1
  35. package/lib/core/deletion-command.d.ts.map +1 -1
  36. package/lib/core/deletion-command.js +84 -24
  37. package/lib/core/deletion-command.js.map +1 -1
  38. package/lib/dsh/compaction.d.ts.map +1 -1
  39. package/lib/dsh/compaction.js +1 -0
  40. package/lib/dsh/compaction.js.map +1 -1
  41. package/lib/dsh/connection-history.d.ts.map +1 -1
  42. package/lib/dsh/connection-history.js +3 -0
  43. package/lib/dsh/connection-history.js.map +1 -1
  44. package/lib/dsh/connection-host.js +1 -1
  45. package/lib/dsh/connection-host.js.map +1 -1
  46. package/lib/dsh/connection.d.ts.map +1 -1
  47. package/lib/dsh/connection.js +24 -3
  48. package/lib/dsh/connection.js.map +1 -1
  49. package/lib/dsh/deletion-protection.d.ts.map +1 -1
  50. package/lib/dsh/deletion-protection.js +18 -10
  51. package/lib/dsh/deletion-protection.js.map +1 -1
  52. package/lib/dsh/index.d.ts.map +1 -1
  53. package/lib/dsh/index.js +2 -0
  54. package/lib/dsh/index.js.map +1 -1
  55. package/lib/dsh/official-budgets.d.ts.map +1 -1
  56. package/lib/dsh/official-budgets.js +15 -3
  57. package/lib/dsh/official-budgets.js.map +1 -1
  58. package/lib/dsh/preset-declaration.d.ts +3 -0
  59. package/lib/dsh/preset-declaration.d.ts.map +1 -1
  60. package/lib/dsh/preset-declaration.js +68 -45
  61. package/lib/dsh/preset-declaration.js.map +1 -1
  62. package/lib/dsh/preset-installation.d.ts +10 -7
  63. package/lib/dsh/preset-installation.d.ts.map +1 -1
  64. package/lib/dsh/preset-installation.js +66 -30
  65. package/lib/dsh/preset-installation.js.map +1 -1
  66. package/lib/dsh/preset-metadata.d.ts.map +1 -1
  67. package/lib/dsh/preset-metadata.js +2 -1
  68. package/lib/dsh/preset-metadata.js.map +1 -1
  69. package/lib/dsh/preset-recovery-runtime.d.ts +76 -0
  70. package/lib/dsh/preset-recovery-runtime.d.ts.map +1 -0
  71. package/lib/dsh/preset-recovery-runtime.js +322 -0
  72. package/lib/dsh/preset-recovery-runtime.js.map +1 -0
  73. package/lib/dsh/preset-recovery.d.ts +14 -0
  74. package/lib/dsh/preset-recovery.d.ts.map +1 -0
  75. package/lib/dsh/preset-recovery.js +140 -0
  76. package/lib/dsh/preset-recovery.js.map +1 -0
  77. package/lib/dsh/ptc-budget.d.ts.map +1 -1
  78. package/lib/dsh/ptc-budget.js +20 -10
  79. package/lib/dsh/ptc-budget.js.map +1 -1
  80. package/lib/dsh/windows-shell.d.ts.map +1 -1
  81. package/lib/dsh/windows-shell.js +18 -4
  82. package/lib/dsh/windows-shell.js.map +1 -1
  83. package/lib/long-memory.d.ts.map +1 -1
  84. package/lib/long-memory.js +3 -2
  85. package/lib/long-memory.js.map +1 -1
  86. package/lib/super-agent-usage.d.ts +2 -0
  87. package/lib/super-agent-usage.d.ts.map +1 -1
  88. package/lib/super-agent-usage.js +16 -11
  89. package/lib/super-agent-usage.js.map +1 -1
  90. package/lib/task-feedback-projection.d.ts +11 -0
  91. package/lib/task-feedback-projection.d.ts.map +1 -1
  92. package/lib/task-feedback-projection.js +37 -12
  93. package/lib/task-feedback-projection.js.map +1 -1
  94. package/package.json +1 -1
  95. package/presets/super-code/agent.cordis.yml +1 -1
@@ -58,6 +58,18 @@ async function exists(path) {
58
58
  throw error;
59
59
  }
60
60
  }
61
+ function installationRecords(settings) {
62
+ return { ...settings.installations, ...(settings.installation ? { [settings.installation.id]: settings.installation } : {}) };
63
+ }
64
+ async function sameDirectory(path, identity) {
65
+ try {
66
+ const stat = await lstat(path);
67
+ return stat.isDirectory() && !stat.isSymbolicLink() && stat.dev === identity.dev && stat.ino === identity.ino;
68
+ }
69
+ catch {
70
+ return false;
71
+ }
72
+ }
61
73
  /** Serialized writes protect double clicks; mkdir claims only an unoccupied name. */
62
74
  export class PresetInstaller {
63
75
  roster;
@@ -72,21 +84,50 @@ export class PresetInstaller {
72
84
  this.baseUrl = baseUrl;
73
85
  }
74
86
  async status() {
75
- const savedId = this.settings.get().installedId;
87
+ const stored = this.settings.get(), savedId = stored.installedId;
76
88
  const id = validId.test(savedId) ? savedId : 'super-code';
77
89
  const presets = await this.roster.list();
78
90
  const preset = presets.find(row => row.id === id);
79
91
  const authorable = this.roster.roots.some(root => root.trust === 'user');
80
92
  const occupied = await this.occupied(id);
81
- const userConflict = occupied && this.settings.get().installedId !== id;
93
+ const ownedCopy = !!preset && await this.owns(preset, installationRecords(stored)[id]);
94
+ const userConflict = occupied && !ownedCopy;
82
95
  if (preset) {
83
96
  const owned = preset.trust === 'system' && resolve(preset.path) === join(this.bundledRoot, 'super-code', 'agent.cordis.yml');
84
97
  return { id, name: preset.name, authorable, userConflict, delivery: 'directory', pluginVersion,
85
98
  ...await directoryVersion(preset.path), state: preset.broken ? 'broken' : owned ? 'available'
86
- : preset.trust === 'user' && this.settings.get().installedId === id ? 'installed' : 'conflict' };
99
+ : ownedCopy ? 'installed' : 'conflict' };
87
100
  }
88
101
  return { id, authorable, userConflict, delivery: 'directory', pluginVersion, state: occupied ? 'conflict' : 'missing' };
89
102
  }
103
+ async owns(preset, identity) {
104
+ if (preset.trust !== 'user' || !identity || identity.id !== preset.id)
105
+ return false;
106
+ const directory = join(preset.path, '..');
107
+ try {
108
+ if (!await sameDirectory(directory, identity) || await realpath(directory) !== identity.path)
109
+ return false;
110
+ const roots = await Promise.all(this.roster.roots.filter(root => root.trust === 'user')
111
+ .map(async (root) => {
112
+ try {
113
+ return join(await realpath(writableRoot([root], preset.id)), preset.id);
114
+ }
115
+ catch {
116
+ return false;
117
+ }
118
+ }));
119
+ if (!roots.includes(identity.path))
120
+ return false;
121
+ const path = join(directory, ownershipFile), stat = await lstat(path);
122
+ if (!stat.isFile() || stat.isSymbolicLink())
123
+ return false;
124
+ const marker = JSON.parse(await readFile(path, 'utf8'));
125
+ return marker?.plugin === 'dsh-super-code' && marker.id === identity.id && marker.token === identity.token;
126
+ }
127
+ catch {
128
+ return false;
129
+ }
130
+ }
90
131
  async initialize() {
91
132
  await this.enqueue(async () => {
92
133
  if (this.settings.get().checked)
@@ -104,12 +145,13 @@ export class PresetInstaller {
104
145
  throw new Error('Invalid language');
105
146
  return await this.enqueue(async () => {
106
147
  const stored = this.settings.get();
148
+ const installations = installationRecords(stored);
107
149
  const display = { ...stored.display };
108
150
  const pendingDisplay = { ...stored.pendingDisplay };
109
151
  let changed = false;
110
152
  for (const preset of await this.roster.list()) {
111
153
  const bundled = preset.trust === 'system' && resolve(preset.path) === join(this.bundledRoot, 'super-code', 'agent.cordis.yml');
112
- const owned = preset.trust === 'user' && (preset.id === stored.installedId || Object.hasOwn(display, preset.path));
154
+ const owned = await this.owns(preset, installations[preset.id]);
113
155
  if (!bundled && !owned)
114
156
  continue;
115
157
  if ((await lstat(join(preset.path, '..'))).isSymbolicLink())
@@ -125,8 +167,12 @@ export class PresetInstaller {
125
167
  }
126
168
  }
127
169
  const result = await migrateMetadata(metadata, preset.id, preset, previous, displayCopy(language), async (baseline) => {
170
+ if (owned && !await this.owns(preset, installations[preset.id]))
171
+ throw new Error('Preset ownership changed during migration');
128
172
  pendingDisplay[preset.path] = baseline;
129
173
  await this.settings.update({ pendingDisplay: { ...pendingDisplay } });
174
+ if (owned && !await this.owns(preset, installations[preset.id]))
175
+ throw new Error('Preset ownership changed during migration');
130
176
  });
131
177
  changed ||= result.changed;
132
178
  display[preset.path] = result.baseline;
@@ -151,31 +197,12 @@ export class PresetInstaller {
151
197
  const stored = this.settings.get(), installation = stored.installation;
152
198
  if (!installation || previousId !== stored.installedId || installation.id !== previousId)
153
199
  return reject('ownership-unverified');
154
- const roots = this.roster.roots.filter(root => root.trust === 'user');
155
- const expected = await Promise.all(roots
156
- .map(async (root) => {
157
- try {
158
- return join(await realpath(writableRoot([root], previousId)), previousId);
159
- }
160
- catch {
161
- return '';
162
- }
163
- }));
164
- if (!expected.includes(installation.path))
200
+ const preset = (await this.roster.list()).find(row => row.id === previousId);
201
+ if (!preset || !await this.owns(preset, installation))
165
202
  return reject('ownership-unverified');
166
- const originalPath = join(writableRoot([roots[expected.indexOf(installation.path)]], previousId), previousId);
203
+ const originalPath = join(preset.path, '..');
167
204
  let backup = '';
168
205
  try {
169
- const directory = await lstat(installation.path);
170
- const markerPath = join(installation.path, ownershipFile);
171
- const markerStat = await lstat(markerPath);
172
- if (!directory.isDirectory() || directory.isSymbolicLink() || !markerStat.isFile() || markerStat.isSymbolicLink()
173
- || await realpath(installation.path) !== installation.path
174
- || directory.dev !== installation.dev || directory.ino !== installation.ino)
175
- return reject('ownership-unverified');
176
- const marker = JSON.parse(await readFile(markerPath, 'utf8'));
177
- if (marker.plugin !== 'dsh-super-code' || marker.token !== installation.token || marker.id !== previousId)
178
- return reject('ownership-unverified');
179
206
  if (id !== previousId && ((await this.roster.list()).some(row => row.id === id) || await this.occupied(id)))
180
207
  return reject('name-taken');
181
208
  // A container without agent.cordis.yml is not a discoverable preset.
@@ -240,22 +267,30 @@ export class PresetInstaller {
240
267
  const source = await copyBundledPreset(this.bundledRoot, staging, id, name?.trim() ?? 'Super Code');
241
268
  const prepared = source.directory;
242
269
  await mkdir(target, { mode: 0o700 });
243
- claimed = true;
270
+ const claim = await lstat(target);
271
+ if (!claim.isDirectory() || claim.isSymbolicLink())
272
+ throw new Error('Installation directory changed');
273
+ claimed = { dev: claim.dev, ino: claim.ino };
244
274
  for (const entry of await readdir(prepared)) {
245
275
  await cp(join(prepared, entry), join(target, entry), { recursive: true, force: false, errorOnExist: true });
246
276
  }
247
277
  const token = randomUUID();
248
278
  await writeFile(join(target, ownershipFile), JSON.stringify({ plugin: 'dsh-super-code', id, token }), { flag: 'wx', mode: 0o600 });
249
279
  const directory = await lstat(target);
280
+ if (!await sameDirectory(target, claimed))
281
+ throw new Error('Installation directory changed');
250
282
  const installation = { id, path: await realpath(target), token, dev: directory.dev, ino: directory.ino };
251
- const display = { ...this.settings.get().display }, pendingDisplay = { ...this.settings.get().pendingDisplay };
283
+ const stored = this.settings.get(), installations = installationRecords(stored);
284
+ const display = { ...stored.display }, pendingDisplay = { ...stored.pendingDisplay };
252
285
  if (replacedPath) {
253
286
  delete display[join(replacedPath, 'agent.cordis.yml')];
254
287
  delete pendingDisplay[join(replacedPath, 'agent.cordis.yml')];
288
+ if (stored.installation)
289
+ delete installations[stored.installation.id];
255
290
  }
256
291
  const status = { id, authorable: true, userConflict: false, state: 'installed',
257
292
  delivery: 'directory', pluginVersion, ...await directoryVersion(join(target, 'agent.cordis.yml')) };
258
- await this.settings.update({ checked: true, installedId: id, installation, pendingDisplay, display: {
293
+ await this.settings.update({ checked: true, installedId: id, installation, installations: { ...installations, [id]: installation }, pendingDisplay, display: {
259
294
  ...display,
260
295
  [join(target, 'agent.cordis.yml')]: {
261
296
  ...(name === undefined ? { name: 'Super Code' } : {}),
@@ -266,7 +301,7 @@ export class PresetInstaller {
266
301
  return { ok: true, status };
267
302
  }
268
303
  catch (error) {
269
- if (claimed)
304
+ if (claimed && await sameDirectory(target, claimed))
270
305
  await rm(target, { recursive: true, force: true });
271
306
  return reject(error.code === 'EEXIST' ? 'name-taken' : 'install-failed');
272
307
  }
@@ -388,6 +423,7 @@ export function applyPresetInstallation(ctx) {
388
423
  checked: s.boolean().default(false),
389
424
  installedId: s.string().default(''),
390
425
  installation: s.object({ id: s.string(), path: s.string(), token: s.string(), dev: s.number(), ino: s.number() }).required(false),
426
+ installations: s.dict(s.object({ id: s.string(), path: s.string(), token: s.string(), dev: s.number(), ino: s.number() })).required(false),
391
427
  pendingDisplay: s.dict(s.object({ name: s.string().required(false), description: s.string().required(false) })).default({}),
392
428
  display: s.dict(s.object({ name: s.string().required(false), description: s.string().required(false) })).default({}),
393
429
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"preset-installation.js","sourceRoot":"","sources":["../../src/dsh/preset-installation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preset-installation.js","sourceRoot":"","sources":["../../src/dsh/preset-installation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"preset-metadata.d.ts","sourceRoot":"","sources":["../../src/dsh/preset-metadata.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AACD,MAAM,WAAW,WAAW;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE;AAClE,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAIzD;AAQD,MAAM,WAAW,iBAAiB;IAAG,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,eAAe,CAAA;CAAE;AAClF,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,EAAE,IAAI,EAAE,WAAW,EAC5G,WAAW,GAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAkB,GACzE,OAAO,CAAC,iBAAiB,CAAC,CAgD5B"}
1
+ {"version":3,"file":"preset-metadata.d.ts","sourceRoot":"","sources":["../../src/dsh/preset-metadata.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AACD,MAAM,WAAW,WAAW;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE;AAClE,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAIzD;AAQD,MAAM,WAAW,iBAAiB;IAAG,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,eAAe,CAAA;CAAE;AAClF,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,EAAE,IAAI,EAAE,WAAW,EAC5G,WAAW,GAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAkB,GACzE,OAAO,CAAC,iBAAiB,CAAC,CAkD5B"}
@@ -71,8 +71,9 @@ export async function migrateMetadata(path, id, current, previous, copy, beforeW
71
71
  }
72
72
  await beforeWrite(baseline);
73
73
  // Persistence can await I/O; check once more before replacing the file.
74
- if (await readFile(path, 'utf8') !== original)
74
+ if (!(await lstat(path)).isFile() || await readFile(path, 'utf8') !== original) {
75
75
  throw new Error('Preset metadata changed during migration');
76
+ }
76
77
  await rename(temporary, path);
77
78
  }
78
79
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"preset-metadata.js","sourceRoot":"","sources":["../../src/dsh/preset-metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preset-metadata.js","sourceRoot":"","sources":["../../src/dsh/preset-metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { Agent } from '@deepseek-ai/dsh-agent';
3
+ import type { Session } from '@deepseek-ai/dsh-session';
4
+ import type { createUserMessage } from '@deepseek-ai/dsh-llm';
5
+ interface Record {
6
+ preset: string;
7
+ createdAt: number;
8
+ cwd?: string;
9
+ fingerprint: string;
10
+ }
11
+ interface State {
12
+ plugin: 'dsh-super-code';
13
+ format: 1;
14
+ sessions: {
15
+ [id: string]: Record;
16
+ };
17
+ }
18
+ export interface RecoveryConfig {
19
+ statePath: string;
20
+ packagePath: string;
21
+ }
22
+ export interface RecoveryService {
23
+ remember(agent: Agent): Promise<void>;
24
+ backfill(presets: readonly string[]): Promise<void>;
25
+ lifetime?: RecoveryConfig & {
26
+ source: string;
27
+ dispose(): Promise<void>;
28
+ };
29
+ }
30
+ export declare function fingerprint(content: string): string;
31
+ /** The durable producer record survives cold reloads and compaction. */
32
+ export declare function deletionNoticeMatches(session: Session, instruction: string): boolean;
33
+ /** Retire only producer-owned rules; keep append-origin history and user instructions intact. */
34
+ export declare function revokeDeletionNotices(session: Session, message: typeof createUserMessage): void;
35
+ /** The first declarative releases predate readDocument; their Loader still owns the definition. */
36
+ export declare function compositionContent(ctx: Context, id: string): Promise<string>;
37
+ /** Invalid or unrelated records fail closed; never replace them with an empty ownership record. */
38
+ export declare class RecoveryState {
39
+ readonly path: string;
40
+ readonly value: State;
41
+ private content;
42
+ private tail;
43
+ private constructor();
44
+ static open(path: string, required?: boolean): Promise<RecoveryState>;
45
+ save(id: string, record: Record): Promise<void>;
46
+ flush(): Promise<void>;
47
+ }
48
+ /** Wrap only the public roster seam; mounting still belongs to the running host. */
49
+ export declare function installRecovery(ctx: Context, state: RecoveryState, config: RecoveryConfig, host: {
50
+ scopeOf(ctx: Context): unknown;
51
+ message: typeof createUserMessage;
52
+ }): RecoveryService;
53
+ export declare const name = "super-code-session-recovery";
54
+ export declare function apply(ctx: Context, config: RecoveryConfig): void;
55
+ declare module '@deepseek-ai/cordis' {
56
+ interface Context {
57
+ superCodeSessionRecovery: RecoveryService;
58
+ }
59
+ }
60
+ declare module '@deepseek-ai/dsh-llm' {
61
+ interface MessageSourceMap {
62
+ 'dsh-super-code/deletion-protection-revoked': {
63
+ kind: 'dsh-super-code/deletion-protection-revoked';
64
+ };
65
+ }
66
+ }
67
+ /** Automatic local recovery owns this command; it is not a user submission. */
68
+ declare module '@deepseek-ai/dsh-commands' {
69
+ interface CommandSourceMap {
70
+ 'dsh-super-code/preset-recovery': {
71
+ kind: 'dsh-super-code/preset-recovery';
72
+ };
73
+ }
74
+ }
75
+ export {};
76
+ //# sourceMappingURL=preset-recovery-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preset-recovery-runtime.d.ts","sourceRoot":"","sources":["../../src/dsh/preset-recovery-runtime.ts"],"names":[],"mappings":"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"}