deadbyte-mcp 0.9.0 → 0.11.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 +134 -92
- package/README.txt +19 -15
- 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-r36.mjs +113 -0
- package/scripts/final-closure-verify-r36.mjs +208 -0
- package/scripts/final-closure-verify.mjs +88 -39
- package/scripts/final-closure.mjs +63 -56
- package/scripts/gate-windows-r36.ps1 +42 -0
- package/scripts/gate-windows.ps1 +3 -3
- package/scripts/release-parity-r36.mjs +200 -0
- package/scripts/release-parity-tests.ps1 +9 -0
- package/scripts/release-parity.mjs +149 -139
- package/scripts/windows-gate-evidence-r36.mjs +52 -0
- package/scripts/windows-gate-evidence.mjs +5 -5
- package/src/agent-memory-plane.mjs +98 -0
- package/src/autonomous-context-engine.mjs +2 -1
- package/src/autonomous-mcp-tools.mjs +5 -1
- package/src/autonomous-output-contracts.mjs +9 -6
- package/src/autonomous-planner-contracts.mjs +36 -1
- package/src/autonomous-planner.mjs +25 -3
- package/src/autonomous-runtime.mjs +337 -43
- package/src/autonomous-timeout-recovery.mjs +27 -0
- 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 +62 -78
- package/src/effect-ledger.mjs +47 -0
- 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-lease.mjs +32 -0
- 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 +135 -0
- package/src/remote-mcp-autonomous-smoke-client.mjs +22 -12
- 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/src/worker-scheduler.mjs +53 -0
- package/test/autonomous-capability-r36.test.mjs +151 -0
- package/test/autonomous-output-contract.test.mjs +1 -1
- 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 +5 -5
- 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 +45 -0
- package/test/r37-agent-fabric.test.mjs +92 -0
- package/test/r37-autonomous-timeout-recovery.test.mjs +60 -0
- package/test/r37-finalization.test.mjs +74 -0
- package/test/release-version.test.mjs +42 -33
- package/test/remote-live-log-r36.test.mjs +37 -0
- package/test/remote-live-log-r37.test.mjs +47 -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 +53 -66
- 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,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "deadbyte.r36-benchmark-case-map.v1",
|
|
3
|
+
"suite_id": "r36-production-coding-v1",
|
|
4
|
+
"source_spec": "docs/superpowers/specs/2026-09-18-r36-zero-loss-autonomy-design.md#r36-h-capability-benchmark-and-competitor-evidence",
|
|
5
|
+
"case_count": 30,
|
|
6
|
+
"evidence_model": "Each case is a hermetic repository test/fixture mapping. A passing process alone is insufficient when a pass_witness is declared. Production rollback/restore is separately required by Task 10.",
|
|
7
|
+
"competitor_evidence_classes": ["documented", "direct_observation"]
|
|
8
|
+
}
|
package/bin/WORKER-REGISTRY.txt
CHANGED
|
@@ -2,11 +2,11 @@ schema=deadbyte.worker-registry.v1
|
|
|
2
2
|
version=0.6.0
|
|
3
3
|
policy=compile-time-operation-to-executable
|
|
4
4
|
launcher.executable=deadbyte-exec.exe
|
|
5
|
-
launcher.sha256=
|
|
5
|
+
launcher.sha256=a84168020dee3bb5d63d97b1076523232872bf142859c07bfcb77a45428a1ce5
|
|
6
6
|
operation.lowercase_ascii=contained-transform-v1
|
|
7
7
|
operation.reverse_bytes=contained-reverse-v1
|
|
8
8
|
operation.uppercase_ascii=contained-transform-v1
|
|
9
9
|
worker.contained-reverse-v1.executable=contained-reverse-worker.exe
|
|
10
|
-
worker.contained-reverse-v1.sha256=
|
|
10
|
+
worker.contained-reverse-v1.sha256=9f3754c3c6fe71d6fe0e04889e33b39cdc64b633e0b713d5979faec748dec69d
|
|
11
11
|
worker.contained-transform-v1.executable=contained-transform-worker.exe
|
|
12
|
-
worker.contained-transform-v1.sha256=
|
|
12
|
+
worker.contained-transform-v1.sha256=01528ffe61736cdb5010396f4b1c52203c7e1848b3aeb4181a0c04a508e1da30
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/bin/deadbyte-contain.exe
CHANGED
|
Binary file
|
package/bin/deadbyte-contain.obj
CHANGED
|
Binary file
|
package/bin/deadbyte-exec.exe
CHANGED
|
Binary file
|
package/bin/deadbyte-exec.obj
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/controller/README.TXT
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
DEADBYTE MCP V0.
|
|
1
|
+
DEADBYTE MCP V0.11.0 / R37 CONTROLLER
|
|
2
2
|
====================================
|
|
3
3
|
|
|
4
4
|
ENTRY POINT
|
|
@@ -8,10 +8,12 @@ Primary operator entry point:
|
|
|
8
8
|
npx deadbyte-mcp@latest remote
|
|
9
9
|
|
|
10
10
|
Bare `remote` is a foreground device session. It starts the verified runtime, arms process,
|
|
11
|
-
coding,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
coding, and autonomous authority, verifies those three planes are ARMED, and requires Host to stay
|
|
12
|
+
DISARMED. The production Bridge uses the R37 compact capability profile (<=42 tools) while local
|
|
13
|
+
stdio MCP keeps the exact full 76-tool profile. The compact console shows request-before-result
|
|
14
|
+
Live Activity without raw SHA text, request IDs, payload JSON, or duplicate Bridge stdout by
|
|
15
|
+
default; use `remote --verbose` for the detailed audit/runtime stream. Ctrl+C/SIGTERM or foreground
|
|
16
|
+
input closure revokes process/coding/autonomous authority, applies fail-safe Host disarm, and parks
|
|
15
17
|
the Bridge. A detached nonce-bound guardian performs the same fixed revoke+park cleanup if the
|
|
16
18
|
foreground owner is hard-killed. The v2 session marker records owner PID, guardian PID, and random
|
|
17
19
|
256-bit nonce so a guardian cannot remove a replacement session marker; a later start recovers only
|
|
@@ -94,7 +96,7 @@ policy digests and profile hashes to the explicit mutable development root; the
|
|
|
94
96
|
armautonomous require coding authority, then enable a standing autonomous grant
|
|
95
97
|
disarmautonomous revoke autonomous authority immediately
|
|
96
98
|
autonomousstatus report configured/standing-grant/coding-disarmed state
|
|
97
|
-
autonomoustest run the
|
|
99
|
+
autonomoustest run the R37 compact public capability-closure MRTR production gate
|
|
98
100
|
|
|
99
101
|
disarmcoding also revokes autonomous authority. No MCP tool creates or widens either
|
|
100
102
|
grant. With an openai_compatible planner the MCP server starts a background supervisor;
|
|
@@ -19,6 +19,33 @@ function Fail([string]$Message) { throw "DEADBYTE controller: $Message" }
|
|
|
19
19
|
function Ensure-Directory([string]$Path) { if (-not (Test-Path -LiteralPath $Path -PathType Container)) { New-Item -ItemType Directory -Path $Path -Force | Out-Null } }
|
|
20
20
|
function Ledger-Path([string]$Name) { Join-Path $RuntimeDir ("{0}.instance.json" -f $Name.ToLowerInvariant()) }
|
|
21
21
|
function Log-Path([string]$Name, [string]$Kind) { Join-Path $LogDir ("{0}.{1}.log" -f $Name.ToLowerInvariant(), $Kind) }
|
|
22
|
+
function Controller-StartFailurePath { Join-Path $RuntimeDir 'controller-start-failure.json' }
|
|
23
|
+
function Read-LogTailBounded([string]$Path, [int]$MaxChars = 8192) {
|
|
24
|
+
if (-not (Test-Path -LiteralPath $Path -PathType Leaf)) { return '' }
|
|
25
|
+
try {
|
|
26
|
+
$text = (@(Get-Content -LiteralPath $Path -Encoding UTF8 -Tail 80 -ErrorAction Stop) -join [Environment]::NewLine)
|
|
27
|
+
if ($text.Length -gt $MaxChars) { return $text.Substring($text.Length - $MaxChars) }
|
|
28
|
+
return $text
|
|
29
|
+
} catch { return '' }
|
|
30
|
+
}
|
|
31
|
+
function Write-ControllerStartFailure([string]$Name, [System.Exception]$Exception) {
|
|
32
|
+
Ensure-Directory $RuntimeDir; Ensure-Directory $LogDir
|
|
33
|
+
$body = [ordered]@{
|
|
34
|
+
schema = 'deadbyte.controller-start-failure.v1'
|
|
35
|
+
command = $Name
|
|
36
|
+
failed_at_utc = [DateTime]::UtcNow.ToString('o')
|
|
37
|
+
message = [string]$Exception.Message
|
|
38
|
+
bridge_stdout_tail = Read-LogTailBounded (Log-Path 'Bridge' 'stdout')
|
|
39
|
+
bridge_stderr_tail = Read-LogTailBounded (Log-Path 'Bridge' 'stderr')
|
|
40
|
+
cloud_stdout_tail = Read-LogTailBounded (Log-Path 'Cloud' 'stdout')
|
|
41
|
+
cloud_stderr_tail = Read-LogTailBounded (Log-Path 'Cloud' 'stderr')
|
|
42
|
+
}
|
|
43
|
+
$path = Controller-StartFailurePath
|
|
44
|
+
$tmp = $path + '.tmp'
|
|
45
|
+
$json = $body | ConvertTo-Json -Depth 4
|
|
46
|
+
[System.IO.File]::WriteAllText($tmp, $json, (New-Object System.Text.UTF8Encoding($false)))
|
|
47
|
+
Move-Item -LiteralPath $tmp -Destination $path -Force
|
|
48
|
+
}
|
|
22
49
|
|
|
23
50
|
|
|
24
51
|
function Read-TextFileSafe([string]$Path) {
|
|
@@ -409,8 +436,11 @@ function Start-OwnedComponent([string]$Name, $Spec, $Cfg = $null) {
|
|
|
409
436
|
$previousSupervisorMarkerEnv = $env:DEADBYTE_SUPERVISOR_MARKER
|
|
410
437
|
$hadAutonomousSupervisorModeEnv = Test-Path Env:DEADBYTE_AUTONOMOUS_SUPERVISOR_MODE
|
|
411
438
|
$previousAutonomousSupervisorModeEnv = $env:DEADBYTE_AUTONOMOUS_SUPERVISOR_MODE
|
|
439
|
+
$hadCapabilityProfileEnv = Test-Path Env:DEADBYTE_CAPABILITY_PROFILE
|
|
440
|
+
$previousCapabilityProfileEnv = $env:DEADBYTE_CAPABILITY_PROFILE
|
|
412
441
|
try {
|
|
413
442
|
if ($Name -eq 'Bridge' -and $Cfg) {
|
|
443
|
+
$env:DEADBYTE_CAPABILITY_PROFILE = 'compact'
|
|
414
444
|
$env:DEADBYTE_AUDIT_RUNTIME = '1'
|
|
415
445
|
$env:DEADBYTE_CORE_ROOT = [string]$Cfg.CoreRoot
|
|
416
446
|
$env:DEADBYTE_WORKSPACE_ROOT = [string]$Cfg.WorkspaceRoot
|
|
@@ -442,6 +472,7 @@ function Start-OwnedComponent([string]$Name, $Spec, $Cfg = $null) {
|
|
|
442
472
|
$env:DEADBYTE_PRIVILEGED_POLICY = [string]$Cfg.HostPolicyFile
|
|
443
473
|
}
|
|
444
474
|
} elseif ($Name -eq 'Supervisor' -and $Cfg) {
|
|
475
|
+
Remove-Item Env:DEADBYTE_CAPABILITY_PROFILE -ErrorAction SilentlyContinue
|
|
445
476
|
Remove-Item Env:DEADBYTE_AUDIT_RUNTIME -ErrorAction SilentlyContinue
|
|
446
477
|
Remove-Item Env:DEADBYTE_PRIVILEGED_POLICY -ErrorAction SilentlyContinue
|
|
447
478
|
Remove-Item Env:DEADBYTE_MACHINE_RUNTIME -ErrorAction SilentlyContinue
|
|
@@ -460,6 +491,7 @@ function Start-OwnedComponent([string]$Name, $Spec, $Cfg = $null) {
|
|
|
460
491
|
$env:DEADBYTE_SUPERVISOR_ONCE = '0'
|
|
461
492
|
$env:DEADBYTE_SUPERVISOR_MARKER = Join-Path $RuntimeDir 'autonomous-supervisor-owner.json'
|
|
462
493
|
} else {
|
|
494
|
+
Remove-Item Env:DEADBYTE_CAPABILITY_PROFILE -ErrorAction SilentlyContinue
|
|
463
495
|
Remove-Item Env:DEADBYTE_AUDIT_RUNTIME -ErrorAction SilentlyContinue
|
|
464
496
|
}
|
|
465
497
|
$proc = Start-Process @start
|
|
@@ -502,6 +534,8 @@ function Start-OwnedComponent([string]$Name, $Spec, $Cfg = $null) {
|
|
|
502
534
|
else { Remove-Item Env:DEADBYTE_SUPERVISOR_MARKER -ErrorAction SilentlyContinue }
|
|
503
535
|
if ($hadAutonomousSupervisorModeEnv) { $env:DEADBYTE_AUTONOMOUS_SUPERVISOR_MODE = $previousAutonomousSupervisorModeEnv }
|
|
504
536
|
else { Remove-Item Env:DEADBYTE_AUTONOMOUS_SUPERVISOR_MODE -ErrorAction SilentlyContinue }
|
|
537
|
+
if ($hadCapabilityProfileEnv) { $env:DEADBYTE_CAPABILITY_PROFILE = $previousCapabilityProfileEnv }
|
|
538
|
+
else { Remove-Item Env:DEADBYTE_CAPABILITY_PROFILE -ErrorAction SilentlyContinue }
|
|
505
539
|
}
|
|
506
540
|
Start-Sleep -Milliseconds 150
|
|
507
541
|
$obs = Get-ProcessObservation ([int]$proc.Id)
|
|
@@ -1145,13 +1179,25 @@ function Run-Command([string]$Name) {
|
|
|
1145
1179
|
}
|
|
1146
1180
|
}
|
|
1147
1181
|
|
|
1148
|
-
if ($Command -ne 'menu') {
|
|
1182
|
+
if ($Command -ne 'menu') {
|
|
1183
|
+
$recordsStartFailure = $Command -in @('start','resume','restart')
|
|
1184
|
+
if ($recordsStartFailure) { Remove-Item -LiteralPath (Controller-StartFailurePath) -Force -ErrorAction SilentlyContinue }
|
|
1185
|
+
try {
|
|
1186
|
+
Run-Command $Command
|
|
1187
|
+
exit 0
|
|
1188
|
+
} catch {
|
|
1189
|
+
if ($recordsStartFailure) {
|
|
1190
|
+
try { Write-ControllerStartFailure $Command $_.Exception } catch {}
|
|
1191
|
+
}
|
|
1192
|
+
throw
|
|
1193
|
+
}
|
|
1194
|
+
}
|
|
1149
1195
|
|
|
1150
1196
|
while ($true) {
|
|
1151
1197
|
Clear-Host
|
|
1152
1198
|
$cfg = Get-Config
|
|
1153
1199
|
Assert-ControllerRootBound $cfg
|
|
1154
|
-
Write-Host 'DEADBYTE MCP ON-DEMAND CONTROLLER V0.
|
|
1200
|
+
Write-Host 'DEADBYTE MCP ON-DEMAND CONTROLLER V0.11.0 / R37'
|
|
1155
1201
|
Write-Host '======================================'
|
|
1156
1202
|
Show-State $cfg | Out-Null
|
|
1157
1203
|
Write-Host ''
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "deadbyte.process-policy.v1",
|
|
3
3
|
"enabled": true,
|
|
4
|
-
"grant_file": "D:\\Projects\\deadbyte-mcp-
|
|
5
|
-
"state_dir": "D:\\Projects\\deadbyte-mcp-
|
|
4
|
+
"grant_file": "D:\\Projects\\deadbyte-mcp-r36-dev\\controller\\runtime\\process-grant.json",
|
|
5
|
+
"state_dir": "D:\\Projects\\deadbyte-mcp-r36-dev\\controller\\runtime\\process-state",
|
|
6
6
|
"native_host": {
|
|
7
|
-
"path": "D:\\Projects\\deadbyte-mcp-
|
|
8
|
-
"sha256": "
|
|
7
|
+
"path": "D:\\Projects\\deadbyte-mcp-r36-dev\\bin\\deadbyte-process-host.exe",
|
|
8
|
+
"sha256": "8c79f30e834daf2f0a916928bc719abf27ba111f446056bf2993c84d0432747a"
|
|
9
9
|
},
|
|
10
10
|
"roots": {
|
|
11
11
|
"core": {
|
|
12
|
-
"path": "D:\\Projects\\deadbyte-mcp-
|
|
12
|
+
"path": "D:\\Projects\\deadbyte-mcp-r36-dev",
|
|
13
13
|
"deny_paths": [
|
|
14
14
|
"node_modules",
|
|
15
15
|
"controller/runtime",
|
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# R36 Capability Evidence
|
|
2
|
+
|
|
3
|
+
Status: development evidence for R36 / planned package version 0.10.0. This document is not a release or Final claim. Release authority remains the R36 freeze, Windows gate, activation/rollback/restore, independent final closure, and npm byte-identity gates.
|
|
4
|
+
|
|
5
|
+
## Reproducible DEADBYTE observation
|
|
6
|
+
|
|
7
|
+
The approved R36 production-coding corpus contains 30 required cases. The latest hermetic run completed with:
|
|
8
|
+
|
|
9
|
+
- cases: 30
|
|
10
|
+
- correct: 30
|
|
11
|
+
- capability_reachable: 30
|
|
12
|
+
- evidence_verified: 30
|
|
13
|
+
- stable verdict identity SHA-256: `3a1d668fcc0c3c38362d0c642c5247357ed7ec6063d89b544c7a1c090521c66e`
|
|
14
|
+
- fixture identity SHA-256: `4a12567e285a4b7b59d9285e08f918357e7b560d2cb9b65f017367188839ef7e`
|
|
15
|
+
- two consecutive passing observation SHA-256 values: `710d0f3ef7bbe1fa3a6b782ba6442a8161d0d5556622e3ca95f2f3baf97cbae3` and `44b52d9507dc04baeeebb5617c63d7d59dbe9b29878fc9420bc5bac3ff7fee0b` (timing-sensitive by design)
|
|
16
|
+
|
|
17
|
+
The corpus covers repository exploration, literal/regex/path search, deterministic paging, bounded multi-read, stat/reparse handling, stale-edit rejection, Native Diff file and topology transactions, semantic navigation/diagnostics/implementations/rename, process lifecycle/actions/recovery, autonomous repair, release-gate refusal, provider interruption recovery, remote replay/deduplication, compact capability closure, Live Logs ordering/redaction, receipt rejection, and hermetic rollback/restore mechanism proof.
|
|
18
|
+
|
|
19
|
+
The benchmark runner requires both test success and a named pass witness. A zero exit caused only by a skipped or unmatched test is not accepted as evidence. Correctness, reachability, and evidence verification are recorded as separate dimensions rather than collapsed into a marketing score.
|
|
20
|
+
|
|
21
|
+
## External reference baseline
|
|
22
|
+
|
|
23
|
+
The comparison references are public upstream projects:
|
|
24
|
+
|
|
25
|
+
- Desktop Commander local MCP: https://github.com/wonderwhy-er/DesktopCommanderMCP
|
|
26
|
+
- Remote Desktop Commander: https://github.com/desktop-commander/remote-desktop-commander
|
|
27
|
+
- Serena: https://github.com/oraios/serena
|
|
28
|
+
|
|
29
|
+
`documented` means a capability is described by the upstream public project documentation/source used as a behavioral reference. `direct_observation` means we executed the referenced implementation or service ourselves and retained reproducible local evidence. These evidence classes are not interchangeable.
|
|
30
|
+
|
|
31
|
+
For this R36 development checkpoint, the DEADBYTE 30-case result above is `direct_observation`. Competitor capability descriptions used for design comparison are `documented` unless an explicit retained direct run is attached to a later release evidence record. Unavailable service state, quota, account requirements, or missing local authority must never be converted into a passing direct observation.
|
|
32
|
+
|
|
33
|
+
## Comparison discipline
|
|
34
|
+
|
|
35
|
+
R36 is evaluated for production software-engineering autonomy, not unrelated document-editing or generic desktop-administration breadth. Tool count is not a quality metric and is not used as a release verdict.
|
|
36
|
+
|
|
37
|
+
The mechanisms tested directly in DEADBYTE include SHA-256 mutation preconditions, Native Diff rollback and independent verification, separately revocable process/coding/autonomous/host authority, typed capability routing, signed journals/receipts, bounded long-process observation, semantic rename through Native Diff, capability-aware autonomous execution, resumable Live Logs, compact-surface closure, and immutable release rollback/restore machinery.
|
|
38
|
+
|
|
39
|
+
Desktop Commander, Remote Desktop Commander, and Serena remain useful comparison references for different strengths and breadth. Any public comparison made from R36 must name the supporting DEADBYTE benchmark case/evidence identity and identify the competitor side as `documented` or `direct_observation`. A difference in mechanism is not by itself a general product ranking.
|
|
40
|
+
|
|
41
|
+
## Release boundary
|
|
42
|
+
|
|
43
|
+
Case 30 is a hermetic rollback/restore mechanism test. It does not replace the production release proof. Before R36 can become Final, one exact frozen 0.10.0 candidate must still pass the full source regression and Windows gate, activate as an immutable slot, roll back to the exact sealed R35 predecessor, restore the exact same R36 candidate, pass independent final-closure verification, and then be packed and published from that verified candidate with registry tarball byte identity proved.
|