deadbyte-mcp 0.9.0 → 0.10.0
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.
- package/MANIFEST.SHA256 +119 -91
- package/README.txt +16 -11
- package/bench/fixtures/corpus.json +32 -13
- package/bench/fixtures/r36/case-map.json +8 -0
- package/bin/WORKER-REGISTRY.txt +3 -3
- package/bin/appcontainer-stage.exe +0 -0
- package/bin/appcontainer-stage.obj +0 -0
- package/bin/bootstrap-advapi32.exe +0 -0
- package/bin/bootstrap-advapi32.obj +0 -0
- package/bin/bootstrap-exitcode.exe +0 -0
- package/bin/bootstrap-exitcode.obj +0 -0
- package/bin/bootstrap-kernel32.exe +0 -0
- package/bin/bootstrap-kernel32.obj +0 -0
- package/bin/child-control-probe.exe +0 -0
- package/bin/child-control-probe.obj +0 -0
- package/bin/child-control-stage.exe +0 -0
- package/bin/child-control-stage.obj +0 -0
- package/bin/contained-reverse-worker.exe +0 -0
- package/bin/contained-reverse-worker.obj +0 -0
- package/bin/contained-transform-worker.exe +0 -0
- package/bin/contained-transform-worker.obj +0 -0
- package/bin/containment-probe.exe +0 -0
- package/bin/containment-probe.obj +0 -0
- package/bin/deadbyte-contain.exe +0 -0
- package/bin/deadbyte-contain.obj +0 -0
- package/bin/deadbyte-exec.exe +0 -0
- package/bin/deadbyte-exec.obj +0 -0
- package/bin/deadbyte-process-host.exe +0 -0
- package/bin/deadbyte-process-host.obj +0 -0
- package/bin/deadbyte-tunnel-host.exe +0 -0
- package/bin/deadbyte-tunnel-host.obj +0 -0
- package/controller/README.TXT +8 -6
- package/controller/deadbyte-controller.ps1 +48 -2
- package/controller/deadbyte-process-policy.json +5 -5
- package/docs/ARCHITECTURE.md +1 -1
- package/docs/R36-CAPABILITY-EVIDENCE.md +43 -0
- package/docs/superpowers/plans/2026-09-18-r36-zero-loss-autonomy.md +739 -0
- package/docs/superpowers/specs/2026-09-18-r36-zero-loss-autonomy-design.md +640 -0
- package/package.json +1 -1
- package/proof/CONTAINMENT-BUILD.txt +6 -6
- package/scripts/deferred-slot-operation.mjs +53 -15
- package/scripts/final-closure-verify.mjs +88 -39
- package/scripts/final-closure.mjs +63 -56
- package/scripts/gate-windows.ps1 +3 -3
- package/scripts/release-parity-tests.ps1 +9 -0
- package/scripts/release-parity.mjs +149 -139
- package/scripts/windows-gate-evidence.mjs +5 -5
- package/src/autonomous-context-engine.mjs +2 -1
- package/src/autonomous-mcp-tools.mjs +5 -1
- package/src/autonomous-output-contracts.mjs +4 -4
- package/src/autonomous-planner-contracts.mjs +36 -1
- package/src/autonomous-planner.mjs +25 -3
- package/src/autonomous-runtime.mjs +191 -21
- package/src/capability-benchmark-runner.mjs +86 -1
- package/src/capability-benchmark.mjs +45 -0
- package/src/capability-ledger.mjs +158 -0
- package/src/coding-mcp-tools.mjs +31 -17
- package/src/coding-output-contracts.mjs +48 -10
- package/src/coding-plane.mjs +45 -9
- package/src/coding-search.mjs +130 -47
- package/src/compact-gateway-mcp-tools.mjs +128 -0
- package/src/compact-gateway-output-contracts.mjs +16 -0
- package/src/deadbyte-cli.mjs +51 -28
- package/src/machine-fs-smoke-client.mjs +1 -1
- package/src/machine-fs.mjs +51 -8
- package/src/mcp-server.mjs +32 -9
- package/src/native-diff-v2.mjs +337 -0
- package/src/native-diff.mjs +50 -2
- package/src/observation-smoke-client.mjs +1 -1
- package/src/operator-surface.mjs +7 -1
- package/src/process-runtime.mjs +98 -11
- package/src/process-smoke-client.mjs +11 -3
- package/src/r36-compact-disarmed-probe.mjs +50 -0
- package/src/r36-full-surface-probe.mjs +56 -0
- package/src/remote-live-log.mjs +76 -0
- package/src/remote-mcp-autonomous-smoke-client.mjs +7 -3
- package/src/remote-mcp-coding-smoke-client.mjs +1 -1
- package/src/remote-mcp-r36-parity-client.mjs +175 -0
- package/src/remote-mcp-smoke-client.mjs +112 -56
- package/src/runtime-update.mjs +51 -1
- package/src/search-cursor.mjs +45 -0
- package/src/semantic-code.mjs +72 -5
- package/src/semantic-lsp-backend.mjs +39 -3
- package/src/version.mjs +1 -1
- package/test/autonomous-capability-r36.test.mjs +151 -0
- package/test/autonomous-runtime.test.mjs +2 -2
- package/test/capability-benchmark-r36.test.mjs +107 -0
- package/test/capability-benchmark-semantic-r36.test.mjs +52 -0
- package/test/capability-claims-r36.test.mjs +23 -0
- package/test/capability-ledger-r36.test.mjs +102 -0
- package/test/coding-catalog-consistency.test.mjs +2 -2
- package/test/coding-plane.test.mjs +2 -2
- package/test/coding-runtime.test.mjs +16 -0
- package/test/coding-search-r36.test.mjs +90 -0
- package/test/compact-catalog-r36.test.mjs +37 -0
- package/test/compact-gateway-r36.test.mjs +66 -0
- package/test/contained.test.mjs +1 -1
- package/test/core.test.mjs +1 -1
- package/test/deferred-slot-operation.test.mjs +9 -0
- package/test/fixtures/lsp-framed-server.mjs +2 -0
- package/test/helpers/autonomous-r34-fixture.mjs +5 -3
- package/test/multi-file-read.test.mjs +3 -0
- package/test/native-diff-topology-r36.test.mjs +105 -0
- package/test/package-boundary.test.mjs +6 -0
- package/test/process-longrun-r36.test.mjs +82 -0
- package/test/process-release-gate.test.mjs +9 -0
- package/test/production-docs.test.mjs +3 -3
- package/test/prompts-resources.test.mjs +7 -1
- package/test/r33-closeout-regression.test.mjs +4 -3
- package/test/r33-finalization.test.mjs +14 -9
- package/test/r36-finalization.test.mjs +104 -0
- package/test/r36-release-identity.test.mjs +52 -0
- package/test/release-version.test.mjs +18 -15
- package/test/remote-live-log-r36.test.mjs +37 -0
- package/test/remote-live-log-recovery-r36.test.mjs +41 -0
- package/test/remote-r24-catalog.test.mjs +13 -0
- package/test/remote-session-cli.test.mjs +40 -30
- package/test/runtime-self-update.test.mjs +58 -1
- package/test/semantic-lsp-backend.test.mjs +9 -0
- package/test/semantic-r36-rename.test.mjs +82 -0
- package/deadbyte-mcp-0.8.9.tgz +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import test from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { createHash } from 'node:crypto';
|
|
6
|
+
import { createR34Fixture } from './helpers/autonomous-r34-fixture.mjs';
|
|
7
|
+
import { createSemanticCodeRuntime } from '../src/semantic-code.mjs';
|
|
8
|
+
|
|
9
|
+
const sha=bytes=>createHash('sha256').update(bytes).digest('hex');
|
|
10
|
+
|
|
11
|
+
test('R36 TypeScript diagnostics carry target/result identity',async()=>{
|
|
12
|
+
const f=await createR34Fixture();
|
|
13
|
+
try{
|
|
14
|
+
await writeFile(path.join(f.project,'diag.ts'),'export const n: number = "wrong";\n');
|
|
15
|
+
const semantic=createSemanticCodeRuntime({codingRuntime:f.codingRuntime,nativeDiffRuntime:f.nativeDiffRuntime});
|
|
16
|
+
const result=await semantic.diagnostics({rootId:'project',relativePath:'diag.ts',maxResults:20});
|
|
17
|
+
assert.equal(result.status,'ok');
|
|
18
|
+
assert.match(result.file_sha256,/^[0-9a-f]{64}$/);
|
|
19
|
+
assert.match(result.result_sha256,/^[0-9a-f]{64}$/);
|
|
20
|
+
assert.ok(result.diagnostics.length>=1);
|
|
21
|
+
} finally {await f.cleanup();}
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
test('R36 TypeScript implementations normalize implementation locations',async()=>{
|
|
25
|
+
const f=await createR34Fixture();
|
|
26
|
+
try{
|
|
27
|
+
await writeFile(path.join(f.project,'impl.ts'),[
|
|
28
|
+
'export interface Greeter {',
|
|
29
|
+
' greet(name: string): string;',
|
|
30
|
+
'}',
|
|
31
|
+
'export class English implements Greeter {',
|
|
32
|
+
' greet(name: string) { return name; }',
|
|
33
|
+
'}',
|
|
34
|
+
''
|
|
35
|
+
].join('\n'));
|
|
36
|
+
const semantic=createSemanticCodeRuntime({codingRuntime:f.codingRuntime,nativeDiffRuntime:f.nativeDiffRuntime});
|
|
37
|
+
const result=await semantic.implementations({rootId:'project',relativePath:'impl.ts',line:1,column:3,maxResults:20});
|
|
38
|
+
assert.equal(result.status,'ok');
|
|
39
|
+
assert.equal(result.engine.startsWith('typescript-'),true);
|
|
40
|
+
assert.ok(result.locations.some(x=>x.path==='impl.ts'&&x.start_line===4));
|
|
41
|
+
assert.match(result.result_sha256,/^[0-9a-f]{64}$/);
|
|
42
|
+
} finally {await f.cleanup();}
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
test('R36 cross-file rename preview creates Native Diff without mutation, then apply/verify succeeds',async()=>{
|
|
46
|
+
const f=await createR34Fixture();
|
|
47
|
+
try{
|
|
48
|
+
const a=path.join(f.project,'a.ts');
|
|
49
|
+
const b=path.join(f.project,'b.ts');
|
|
50
|
+
await writeFile(a,'export function greet(name: string) { return `hi ${name}`; }\n');
|
|
51
|
+
await writeFile(b,"import { greet } from './a';\nexport const message = greet('deadbyte');\n");
|
|
52
|
+
const beforeA=await readFile(a); const beforeB=await readFile(b);
|
|
53
|
+
const semantic=createSemanticCodeRuntime({codingRuntime:f.codingRuntime,nativeDiffRuntime:f.nativeDiffRuntime});
|
|
54
|
+
const preview=await semantic.renamePreview({rootId:'project',relativePath:'a.ts',line:0,column:16,newName:'salute'});
|
|
55
|
+
assert.equal(preview.status,'ready');
|
|
56
|
+
assert.match(preview.diff_id,/^[0-9a-f]{64}$/);
|
|
57
|
+
assert.equal(preview.affected_files,2);
|
|
58
|
+
assert.ok(preview.edit_count>=3);
|
|
59
|
+
assert.equal(preview.backend.startsWith('typescript-'),true);
|
|
60
|
+
assert.equal(preview.preimages.length,2);
|
|
61
|
+
assert.deepEqual(preview.preimages.map(x=>x.path),['a.ts','b.ts']);
|
|
62
|
+
assert.equal(sha(await readFile(a)),sha(beforeA));
|
|
63
|
+
assert.equal(sha(await readFile(b)),sha(beforeB));
|
|
64
|
+
|
|
65
|
+
const applied=await f.nativeDiffRuntime.apply({diffId:preview.diff_id});
|
|
66
|
+
assert.equal(applied.status,'committed');
|
|
67
|
+
const verified=await f.nativeDiffRuntime.verify({diffId:preview.diff_id});
|
|
68
|
+
assert.equal(verified.ok,true);
|
|
69
|
+
assert.equal(verified.current_state_matches,true);
|
|
70
|
+
assert.match(await readFile(a,'utf8'),/function salute/);
|
|
71
|
+
assert.match(await readFile(b,'utf8'),/salute\('deadbyte'\)/);
|
|
72
|
+
} finally {await f.cleanup();}
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
test('R36 rename preview rejects invalid identifiers before Native Diff creation',async()=>{
|
|
76
|
+
const f=await createR34Fixture();
|
|
77
|
+
try{
|
|
78
|
+
await writeFile(path.join(f.project,'bad.ts'),'export const value = 1;\n');
|
|
79
|
+
const semantic=createSemanticCodeRuntime({codingRuntime:f.codingRuntime,nativeDiffRuntime:f.nativeDiffRuntime});
|
|
80
|
+
await assert.rejects(()=>semantic.renamePreview({rootId:'project',relativePath:'bad.ts',line:0,column:13,newName:'not valid'}),/new name|identifier/i);
|
|
81
|
+
} finally {await f.cleanup();}
|
|
82
|
+
});
|
package/deadbyte-mcp-0.8.9.tgz
DELETED
|
Binary file
|