deadbyte-mcp 0.15.34 → 0.15.36

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 (101) hide show
  1. package/MANIFEST.SHA256 +100 -38
  2. package/PROVENANCE.json +87 -41
  3. package/README.txt +72 -14
  4. package/RELEASE.json +187 -150
  5. package/SBOM.cdx.json +25 -3
  6. package/TEST-MATRIX.json +258 -151
  7. package/bridge/package.json +13 -0
  8. package/bridge/src/bridge-health-r59.mjs +52 -0
  9. package/bridge/src/bridge.mjs +487 -0
  10. package/bridge/src/node-http-adapter.mjs +56 -0
  11. package/bridge/src/public-tool-definitions.mjs +14 -0
  12. package/bridge/src/r40-governor.mjs +206 -0
  13. package/controller/deadbyte-controller.ps1 +152 -18
  14. package/controller/deadbyte-process-policy.json +4 -4
  15. package/docs/R59-TASK-CONTRACT.md +26 -0
  16. package/package.json +7 -3
  17. package/proof/r59-full-regression-current.json +13 -0
  18. package/proof/r59-full-regression-current.stderr.log +0 -0
  19. package/proof/r59-full-regression-current.stdout.log +1268 -0
  20. package/scripts/bridge-benchmark-r58.mjs +67 -0
  21. package/scripts/deploy-r48.mjs +2 -3
  22. package/scripts/gate-windows-r58.ps1 +33 -0
  23. package/scripts/gate-windows-r59-prepublish.ps1 +41 -0
  24. package/scripts/owner-probe-r58.mjs +31 -0
  25. package/scripts/performance-r58.mjs +57 -0
  26. package/scripts/public-baseline-r58.mjs +72 -0
  27. package/scripts/public-surface-r58.mjs +84 -0
  28. package/scripts/r58-cross-plane.ps1 +6 -0
  29. package/scripts/r58-focused.ps1 +6 -0
  30. package/scripts/r59-full-regression-capture.mjs +35 -0
  31. package/scripts/windows-gate-evidence-r58.mjs +93 -0
  32. package/src/capability-resolver.mjs +25 -7
  33. package/src/capability-snapshot.mjs +52 -0
  34. package/src/compact-gateway-mcp-tools.mjs +10 -11
  35. package/src/deadbyte-cli.mjs +40 -12
  36. package/src/doctor-foreground-r58.mjs +44 -0
  37. package/src/doctor-installation-r58.mjs +63 -0
  38. package/src/doctor-r45.mjs +21 -4
  39. package/src/doctor-runtime-r58.mjs +82 -0
  40. package/src/doctor-transactions-r58.mjs +40 -0
  41. package/src/foreground-process-identity.mjs +27 -0
  42. package/src/foreground-session-lock.mjs +20 -0
  43. package/src/foreground-session-lock.ps1 +15 -0
  44. package/src/mcp-server.mjs +179 -118
  45. package/src/r40-compact-disarmed-probe.mjs +1 -1
  46. package/src/r44-compact-disarmed-probe.mjs +1 -1
  47. package/src/r45-compact-disarmed-probe.mjs +1 -1
  48. package/src/release-generation.mjs +1 -0
  49. package/src/release-slot.mjs +2 -1
  50. package/src/remote-mcp-r40-parity-client.mjs +1 -1
  51. package/src/remote-mcp-r44-parity-client.mjs +1 -1
  52. package/src/remote-mcp-r45-parity-client.mjs +1 -1
  53. package/src/remote-mcp-smoke-client.mjs +1 -1
  54. package/src/remote-session-guardian.mjs +8 -1
  55. package/src/runtime-plane-registry.mjs +74 -0
  56. package/src/runtime-update.mjs +85 -2
  57. package/src/version.mjs +1 -1
  58. package/test/bridge-runtime-r59.test.mjs +60 -0
  59. package/test/capability-resolver.test.mjs +16 -0
  60. package/test/capability-snapshot-r59.test.mjs +39 -0
  61. package/test/compact-gateway-r36.test.mjs +22 -2
  62. package/test/compact-max-catalog-r44.test.mjs +1 -1
  63. package/test/compact-max-catalog-r45.test.mjs +1 -1
  64. package/test/contained.test.mjs +2 -1
  65. package/test/controller-policy-preflight-r59.test.mjs +39 -0
  66. package/test/controller-r211.test.mjs +4 -1
  67. package/test/controller.test.mjs +2 -1
  68. package/test/fixtures/r59-compact-surface-v0.15.35.json +222 -0
  69. package/test/helpers/r58-doctor-fixture.mjs +26 -0
  70. package/test/observation-integration.test.mjs +2 -3
  71. package/test/optional-plane-degraded-r59.test.mjs +44 -0
  72. package/test/r49-windows-gate.test.mjs +2 -2
  73. package/test/r57-release-contract.test.mjs +5 -3
  74. package/test/r58-bridge-dependency-binding.test.mjs +62 -0
  75. package/test/r58-bundled-bridge.test.mjs +24 -0
  76. package/test/r58-cleanup-retention.test.mjs +45 -0
  77. package/test/r58-completed-update-receipt.test.mjs +76 -0
  78. package/test/r58-concurrent-recovery.test.mjs +54 -0
  79. package/test/r58-controller-core-observation.test.mjs +36 -0
  80. package/test/r58-controller-json.test.mjs +48 -0
  81. package/test/r58-controller-live-local.test.mjs +98 -0
  82. package/test/r58-controller-readonly.test.mjs +23 -0
  83. package/test/r58-controller-state-coherence.test.mjs +45 -0
  84. package/test/r58-doctor-cli.test.mjs +20 -0
  85. package/test/r58-doctor-foreground.test.mjs +50 -0
  86. package/test/r58-doctor-installation.test.mjs +55 -0
  87. package/test/r58-doctor-pointer.test.mjs +41 -0
  88. package/test/r58-doctor-runtime.test.mjs +45 -0
  89. package/test/r58-doctor-transactions.test.mjs +21 -0
  90. package/test/r58-guardian-channel.test.mjs +26 -0
  91. package/test/r58-launcher-shell.test.mjs +28 -0
  92. package/test/r58-owner-identity.test.mjs +20 -0
  93. package/test/r58-release-contract.test.mjs +50 -0
  94. package/test/r58-session-lock.test.mjs +26 -0
  95. package/test/r58-stale-owner.test.mjs +71 -0
  96. package/test/r58-windows-gate.test.mjs +32 -0
  97. package/test/r59-release-contract.test.mjs +61 -0
  98. package/test/r59-tool-surface-compat.test.mjs +90 -0
  99. package/test/release-generation.test.mjs +4 -1
  100. package/test/remote-session-cli.test.mjs +55 -2
  101. package/test/runtime-plane-registry-r59.test.mjs +40 -0
package/TEST-MATRIX.json CHANGED
@@ -1,151 +1,258 @@
1
- {
2
- "schema": "deadbyte.test-matrix.v1",
3
- "version": "0.15.34",
4
- "train": "R57",
5
- "primary_platform": "win32-x64",
6
- "reference": {
7
- "package": "@wonderwhy-er/desktop-commander",
8
- "version": "0.2.51",
9
- "server_sha256": "dfc303bb7dd2e8d01debac50fc43bb8644d00089bffdf2887e149497cff8b305",
10
- "schemas_sha256": "f342345e34e48769dabaefe1b932f09d41e2e207b422f7794a15ee50ffa8f140"
11
- },
12
- "required": [
13
- {
14
- "id": "r57-focused",
15
- "command": "npm run r57:focused:test",
16
- "expected": "PASS bounded core startup discovery, timeout and ambiguity negative controls, signed rollback regressions, runtime update/slot contracts"
17
- },
18
- {
19
- "id": "full-regression",
20
- "command": "npm run r48:full:test",
21
- "expected": "PASS current R57 successor"
22
- },
23
- {
24
- "id": "package-boundary",
25
- "command": "node --test test/package-boundary.test.mjs",
26
- "expected": "PASS"
27
- },
28
- {
29
- "id": "windows-gate",
30
- "command": "npm run gate:windows",
31
- "expected": "PASS R57 focused + recorded full regression + manifest/doctor evidence"
32
- },
33
- {
34
- "id": "package-verify",
35
- "command": "node scripts/npm-release-r48.mjs --verify-only",
36
- "expected": "PASS exact packaged surface and isolated doctor"
37
- },
38
- {
39
- "id": "activation",
40
- "command": "npx --yes deadbyte-mcp@0.15.34 remote",
41
- "expected": "activate exact R57 from exact active 0.15.33"
42
- },
43
- {
44
- "id": "rollback",
45
- "command": "runtime-update --rollback-receipt <signed R57 activation receipt>",
46
- "expected": "restore exact signed 0.15.33 pointer/runtime, ONLINE, all authority DISARMED despite transient zero-child startup window"
47
- },
48
- {
49
- "id": "restore",
50
- "command": "npx --yes deadbyte-mcp@0.15.34 remote",
51
- "expected": "restore same exact R57 release/generation and foreground authority contract"
52
- }
53
- ],
54
- "observed_pre_release_evidence": {
55
- "red_parent_0_15_33": {
56
- "status": "FAIL_EXPECTED",
57
- "tests": 5,
58
- "failed": 5,
59
- "receipt_id": "5ab72278a1c91a03bd7223a5",
60
- "receipt_sha256": "f12a8ea7593aa0754da45c074e613d7d3c530e8e95d83a9e8b669cfbc61d0306"
61
- },
62
- "green_r57_candidate": {
63
- "status": "PASS",
64
- "tests": 5,
65
- "failed": 0,
66
- "receipt_id": "bcfdb0757b905154960eaea9",
67
- "receipt_sha256": "9b62291a4312df128e88749f1a0c88d3884d82fb651d7d389db4e14556a5f39f"
68
- },
69
- "parent_activation": {
70
- "status": "PASS",
71
- "release_id": "v0.15.33-776a51cb916e28dd",
72
- "manifest_sha256": "776a51cb916e28ddc3cbb2ecd3857151a0e73e0aaf83d4e6308e6674125dd01c",
73
- "generation_manifest_sha256": "20ccc5e4bbf8470b61e0a6d2ad181dad5e8533da980ceba7749e1d6f48d9dbd3",
74
- "activation_receipt_sha256": "5da29c0c6e7858d518f1ece5e3509ac9ac9e2079f4117a83827a0d432018a4d0"
75
- },
76
- "parent_rollback": {
77
- "status": "FAIL_EXPECTED",
78
- "error": "expected one unambiguous downstream core for bridge 20396, found children=0 visible_matches=0",
79
- "state_path": "C:\\Users\\DEADBYTE\\.deadbyte-mcp\\evidence\\updates\\r31-rollback-5da29c0c6e7858d5-muou98lb-1163ac55\\state.json",
80
- "state_sha256": "e4ffcdb92a997bb49f936dfc338701b81601ad0ded97284f5d615f4276786608",
81
- "predecessor_pointer_reached": true,
82
- "recovery_successor_pointer_restored": true,
83
- "recovery_successor_runtime_restarted": true,
84
- "recovery_errors": []
85
- },
86
- "full_regression": {
87
- "status": "PASS",
88
- "files": 235,
89
- "batches": 8,
90
- "elapsed_ms": 239011.708,
91
- "receipt_id": "9d95b63da942fc18a74c98a3",
92
- "receipt_sha256": "66e6e9ed02e8aa6e8e3644f44561983f3051893b890b964d33c3364402ced17f",
93
- "request_sha256": "f8de9082c0d30ee075607727cdb9af031b3f400cada8ea56c3debc12f353b65e"
94
- }
95
- },
96
- "inherited_parent_evidence": {
97
- "version": "0.15.33",
98
- "parent_full_regression": "PASS",
99
- "parent_manifest_sha256": "776a51cb916e28ddc3cbb2ecd3857151a0e73e0aaf83d4e6308e6674125dd01c",
100
- "parent_tarball_sha256": "d84a6df0a972a43c50d5e31242d9217f59858b2d73c4284af296da76d2048e5f",
101
- "parent_registry_identity": "PASS",
102
- "four_hour_soak": "NOT_COMPLETED_OPERATOR_BYPASS"
103
- },
104
- "operator_override": {
105
- "four_hour_soak": "NOT_COMPLETED",
106
- "stable_final_claim": false
107
- },
108
- "performance": {
109
- "r51": {
110
- "coding_command_singleflight": true,
111
- "completed_result_cache": {
112
- "ttl_ms": 300000,
113
- "max_entries": 16
114
- },
115
- "live_log_poll_ms": 250,
116
- "live_log_discovery_interval_ms": 1000,
117
- "max_audit_segments_polled": 2,
118
- "audit_json_parse_per_line": 1
119
- },
120
- "r52": {
121
- "offline_predecessor_host_revoke_before_capture": true,
122
- "status_reread_required": true,
123
- "fail_closed_if_host_remains_armed": true
124
- },
125
- "r54": {
126
- "offline_recovery_activation_ancestry_exclusion": true,
127
- "unrelated_stale_runtime_fail_closed": true
128
- },
129
- "r55": {
130
- "offline_recovery_foreground_guardian_family_exclusion": true,
131
- "guardian_owner_parent_binding_required": true,
132
- "guardian_session_nonce_contract_required": true,
133
- "unrelated_stale_runtime_fail_closed": true
134
- },
135
- "r56": {
136
- "signed_handoff_launcher_snapshot_required": true,
137
- "predecessor_launcher_restored_before_pointer_commit": true,
138
- "successor_launcher_restored_before_recovery_pointer": true
139
- },
140
- "r57": {
141
- "core_startup_wait_timeout_ms": 10000,
142
- "core_startup_poll_ms": 100,
143
- "retry_only_zero_child": true,
144
- "ambiguous_topology_fail_closed": true
145
- }
146
- },
147
- "non_win32": {
148
- "portable_tests": "supported where platform-independent",
149
- "windows_native_tests": "SKIP/unsupported"
150
- }
151
- }
1
+ {
2
+ "schema": "deadbyte.test-matrix.v1",
3
+ "version": "0.15.36",
4
+ "train": "R59",
5
+ "primary_platform": "win32-x64",
6
+ "reference": {
7
+ "package": "@wonderwhy-er/desktop-commander",
8
+ "version": "0.2.51",
9
+ "server_sha256": "dfc303bb7dd2e8d01debac50fc43bb8644d00089bffdf2887e149497cff8b305",
10
+ "schemas_sha256": "f342345e34e48769dabaefe1b932f09d41e2e207b422f7794a15ee50ffa8f140"
11
+ },
12
+ "required": [
13
+ {
14
+ "id": "r59-focused",
15
+ "command": "npm run r59:focused:test",
16
+ "expected": "PASS optional-plane degradation, capability v3, Bridge reconciliation, controller preflight and no public tool drift"
17
+ },
18
+ {
19
+ "id": "r59-release-contract",
20
+ "command": "npm run r59:release:test",
21
+ "expected": "PASS exact 0.15.35 lineage, 0.15.36 identity coherence and documented operator limitations"
22
+ },
23
+ {
24
+ "id": "full-regression",
25
+ "command": "node scripts/r59-full-regression-capture.mjs",
26
+ "expected": "PASS after final release-identity mutation"
27
+ },
28
+ {
29
+ "id": "windows-gate",
30
+ "command": "npm run gate:windows",
31
+ "expected": "PASS R59 contracts, manifest and doctor with exact 0.15.35 predecessor"
32
+ },
33
+ {
34
+ "id": "package-verify",
35
+ "command": "node scripts/npm-release-r48.mjs --verify-only",
36
+ "expected": "PASS exact packaged surface and isolated doctor"
37
+ },
38
+ {
39
+ "id": "frontdoor",
40
+ "command": "node src/remote-mcp-smoke-client.mjs \u003cactive-https-mcp\u003e smoke",
41
+ "expected": "PASS exact 43-tool compact catalog and independently verified Ed25519 ping"
42
+ },
43
+ {
44
+ "id": "activation",
45
+ "command": "npx --yes deadbyte-mcp@0.15.36 remote",
46
+ "expected": "activate exact R59 from exact active 0.15.35"
47
+ },
48
+ {
49
+ "id": "rollback",
50
+ "command": "runtime-update --rollback-receipt \u003csigned R59 activation receipt\u003e",
51
+ "expected": "restore exact signed 0.15.35 pointer/runtime, ONLINE, all authority DISARMED"
52
+ },
53
+ {
54
+ "id": "restore",
55
+ "command": "npx --yes deadbyte-mcp@0.15.36 remote",
56
+ "expected": "restore exact same immutable R59 release/generation and verify public MCP"
57
+ }
58
+ ],
59
+ "observed_pre_release_evidence": {
60
+ "bridge_dependency_first_red": {
61
+ "status": "FAIL_EXPECTED",
62
+ "tests": 3,
63
+ "failed": 3,
64
+ "receipt_id": "9ccae28950a898ed6303953f",
65
+ "receipt_sha256": "81c77105679581b927bd874d74456c057901c05578c8baeb055311bdde668339"
66
+ },
67
+ "bridge_dependency_green": {
68
+ "status": "PASS",
69
+ "tests": 3,
70
+ "failed": 0,
71
+ "receipt_id": "58e4aefc717b305ea95bb719",
72
+ "receipt_sha256": "46f66b52eb9a761ef1260c15bee618ecda3944a3df3767057aabf0541da3fd9b"
73
+ },
74
+ "bundled_bridge_first_red": {
75
+ "status": "FAIL_EXPECTED",
76
+ "tests": 2,
77
+ "failed": 2,
78
+ "receipt_id": "184fba94cec5527ca276dfb6",
79
+ "receipt_sha256": "f261242a1d007ee54a233dcb755c7b80db00b0bb1dc7825aed2c6ee3a6fe6d52"
80
+ },
81
+ "bundled_bridge_green": {
82
+ "status": "PASS",
83
+ "tests": 2,
84
+ "failed": 0,
85
+ "receipt_id": "fe63b8ef6299469b4d722e23",
86
+ "receipt_sha256": "32c8b4b5c4569928b90945d069dbc9fd46008d11114ab421d5ba72c5a117d197"
87
+ },
88
+ "isolated_live_lifecycle": {
89
+ "status": "PASS",
90
+ "tests": 1,
91
+ "failed": 0,
92
+ "receipt_id": "891a8004a121eba1feb374e1",
93
+ "receipt_sha256": "1c8454baee9c36ebefc49318a4d31d14cd91644bd91f92ef77ffa4d857788555"
94
+ },
95
+ "focused_current": {
96
+ "status": "PASS",
97
+ "tests": 98,
98
+ "failed": 0,
99
+ "receipt_id": "f7571557a3faeafea4af755a",
100
+ "receipt_sha256": "2225e2506b3a714359194fcb2657d22911eaef34904ab0a031c1e35419f293e7",
101
+ "request_sha256": "4bd1ac94df92661a950ad7c6b52b062b2c873581ea72868ce411a770b7ab3e67"
102
+ },
103
+ "performance": {
104
+ "status": "PASS_BOUNDED_PREPUBLISH",
105
+ "summary_sha256": "4586d8462ce1ae643d255315d4b4febfdd3f731dd8728e4b37b5636b622b756c",
106
+ "stdio_parent_p95_ms": 1.0380999999997584,
107
+ "stdio_candidate_p95_ms": 1.0587000000000444,
108
+ "stdio_p95_delta_pct": 1.984392678457768,
109
+ "bridge_candidate_first_reduction_pct": 63.632445348471286,
110
+ "bridge_baseline_first_reduction_pct": 43.06594367803213,
111
+ "receipts": [
112
+ "63d921dc746b3070ce359a5307d0117bbb2327fa6317bb71ab1906a925b3aa97",
113
+ "4d3aac8c4bad143dd82a1d2f8b3904fd01862708e24cb11a01285b74548cebe6",
114
+ "cf8450e1cecbdfb41cf546b8818181c4f5c141e6b050d694af87920c7f7612de",
115
+ "eff9d7e55cec4d6a778afdda3bb3b8e2e24f7a4addd9bb6ace6eaa2839f2372d"
116
+ ]
117
+ },
118
+ "cross_plane": {
119
+ "status": "PASS",
120
+ "tests": 126,
121
+ "failures": 0,
122
+ "receipts": [
123
+ "b57c8c1051655f36116a5bea4d2c6818001daede3e6cc5689049f44495f11153",
124
+ "e9aef5b21f8bfd4b4737964aa275045383540fc0569bffb57f0b7a1974dda967",
125
+ "ea1df2285e27758517259195de743ea186817888809c91f7998772acb2ad58c7",
126
+ "d6d80921d04ccbc7e1ede7ebc63a50157ee33e3f7529f2e75c8120285cbcfd52",
127
+ "27385e3e27cf7952b89bca8660369f09559f028606cd9e53c5275a178ad5057b"
128
+ ]
129
+ },
130
+ "full_regression": {
131
+ "status": "PASS",
132
+ "files": 258,
133
+ "batches": 8,
134
+ "elapsed_ms": 336694.69,
135
+ "receipt_id": "bb121ac3ce6b6806f7f46fff",
136
+ "receipt_sha256": "2d38483435dfc05a30682cd28df80d479f8e2590c636dde5ff3e278372d7463e",
137
+ "request_sha256": "130a418b22b2aef396a1aa0021bdfa0ba9a57d09af9497dcd2522adbca47aecd"
138
+ },
139
+ "package": {
140
+ "status": "PENDING"
141
+ },
142
+ "public_surface": {
143
+ "status": "PASS",
144
+ "production_tool_count": 43,
145
+ "candidate_tool_count": 43,
146
+ "drift": [
147
+
148
+ ],
149
+ "baseline_catalog_sha256": "ceabd441cc774d03322041155052a28c8fb1c63ae9847199e0278d05c4bd1b28",
150
+ "names_sha256": "dde7d10e85c52beb285e3adf41b69dece11162ab0bc8233f056e471f653776d6",
151
+ "schema_sha256": "8efb5cbcd24f1a46ef4588c92d913fa1fd72d7c71a9ad243b151f2b483a7f5cb",
152
+ "receipt_sha256": "58eefdebe2c456b171eaebf585687bf111ee81f84c92ae968091f4eb056d4c91"
153
+ },
154
+ "pre_full_package_process": {
155
+ "status": "PASS",
156
+ "tests": 17,
157
+ "failed": 0,
158
+ "receipt_id": "f1aa5d06775113d734b94149",
159
+ "receipt_sha256": "d0dce46d897422f0db690b0cd523e5ab740ffd967e4dc8e265d436d888ccff9f"
160
+ },
161
+ "r59_contracts": {
162
+ "status": "PASS",
163
+ "tests": 19,
164
+ "failed": 0,
165
+ "receipt_sha256": "2d3adcc33d010c4977974971222e6b13d613ff268097fff0eec0113e4f82f281"
166
+ },
167
+ "r59_public_surface": {
168
+ "status": "PASS",
169
+ "tool_count": 43,
170
+ "unchanged": 43,
171
+ "added": 0,
172
+ "removed": 0,
173
+ "schema_changed": 0,
174
+ "baseline_release": "v0.15.35-1b5715b276facbc0",
175
+ "surface_sha256": "8e98978b720633acb0c7d4d65c36a945243c47f6dbccfa64ab877329f2956fe3"
176
+ },
177
+ "r59_full_regression": {
178
+ "status": "PENDING_AFTER_RELEASE_IDENTITY_MUTATION"
179
+ },
180
+ "r59_package": {
181
+ "status": "PENDING"
182
+ }
183
+ },
184
+ "inherited_parent_evidence": {
185
+ "version": "0.15.35",
186
+ "parent_manifest_sha256": "1b5715b276facbc00f8e341a554472cb4829e5af60e221c357c41b66053af9d4",
187
+ "parent_generation_manifest_sha256": "047e73b62d7b7819b84201a221a09b7e647cacf21f82101ebed4fbd7e23fc430",
188
+ "parent_tarball_sha256": "8259e30946d28dd138c1e2ce2f483fe1370d1658544f2adbfebafa4db8875bba",
189
+ "parent_registry_identity": "PASS",
190
+ "parent_activation_rollback_restore": "PASS",
191
+ "four_hour_soak": "WAIVED_BY_OPERATOR",
192
+ "clean_machine": "NOT_COMPLETED"
193
+ },
194
+ "performance": {
195
+ "r51": {
196
+ "coding_command_singleflight": true,
197
+ "completed_result_cache": {
198
+ "ttl_ms": 300000,
199
+ "max_entries": 16
200
+ },
201
+ "live_log_poll_ms": 250,
202
+ "live_log_discovery_interval_ms": 1000,
203
+ "max_audit_segments_polled": 2,
204
+ "audit_json_parse_per_line": 1
205
+ },
206
+ "r52": {
207
+ "offline_predecessor_host_revoke_before_capture": true,
208
+ "status_reread_required": true,
209
+ "fail_closed_if_host_remains_armed": true
210
+ },
211
+ "r54": {
212
+ "offline_recovery_activation_ancestry_exclusion": true,
213
+ "unrelated_stale_runtime_fail_closed": true
214
+ },
215
+ "r55": {
216
+ "offline_recovery_foreground_guardian_family_exclusion": true,
217
+ "guardian_owner_parent_binding_required": true,
218
+ "guardian_session_nonce_contract_required": true,
219
+ "unrelated_stale_runtime_fail_closed": true
220
+ },
221
+ "r56": {
222
+ "signed_handoff_launcher_snapshot_required": true,
223
+ "predecessor_launcher_restored_before_pointer_commit": true,
224
+ "successor_launcher_restored_before_recovery_pointer": true
225
+ },
226
+ "r57": {
227
+ "core_startup_wait_timeout_ms": 10000,
228
+ "core_startup_poll_ms": 100,
229
+ "retry_only_zero_child": true,
230
+ "ambiguous_topology_fail_closed": true
231
+ },
232
+ "r58": {
233
+ "baseline_version": "0.15.34",
234
+ "candidate_version": "0.15.35",
235
+ "aggregate_warm_p95_target_reduction_pct": 20,
236
+ "status": "PASS_BOUNDED_PREPUBLISH",
237
+ "bridge_baseline_first_p95_reduction_pct": 43.06594367803213,
238
+ "bridge_candidate_first_p95_reduction_pct": 63.632445348471286,
239
+ "stdio_p95_delta_pct": 1.984392678457768
240
+ },
241
+ "r59": {
242
+ "baseline_version": "0.15.35",
243
+ "candidate_version": "0.15.36",
244
+ "public_surface_tool_count": 43,
245
+ "status": "NO_NEW_PERFORMANCE_CLAIM_OPERATOR_OVERRIDE"
246
+ }
247
+ },
248
+ "non_win32": {
249
+ "portable_tests": "supported where platform-independent",
250
+ "windows_native_tests": "SKIP/unsupported"
251
+ },
252
+ "operator_override": {
253
+ "four_hour_soak": "WAIVED_BY_OPERATOR",
254
+ "clean_machine": "WAIVED_BY_OPERATOR",
255
+ "reason": "Operator explicitly requested immediate deployment without further testing.",
256
+ "stable_final_claim": false
257
+ }
258
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "deadbyte-chatgpt-bridge",
3
+ "version": "0.15.36",
4
+ "private": true,
5
+ "type": "module",
6
+ "engines": {
7
+ "node": ">=22"
8
+ },
9
+ "dependencies": {
10
+ "@modelcontextprotocol/client": "2.1.0",
11
+ "@modelcontextprotocol/server": "2.1.0"
12
+ }
13
+ }
@@ -0,0 +1,52 @@
1
+ const HEX64=/^[0-9a-f]{64}$/;
2
+ const PHASES=new Set(['STARTING','READY','DEGRADED','RECONCILING','STOPPING']);
3
+
4
+ function bounded(value,max=512){
5
+ return String(value??'').replace(/[\r\n\t]+/g,' ')
6
+ .replace(/(?:Bearer\s+\S+|token|secret|password|[A-Za-z]:\\[^ ]+)/gi,'<redacted>').slice(0,max);
7
+ }
8
+
9
+ export function createBridgeHealth({clock=Date.now,maxCapabilityAgeMs=15000}={}){
10
+ if(typeof clock!=='function'||!Number.isInteger(maxCapabilityAgeMs)||maxCapabilityAgeMs<5000||maxCapabilityAgeMs>60000) throw new Error('bridge health options invalid');
11
+ let phase='STARTING';
12
+ let diagnostic='downstream initialization pending';
13
+ let core=null;
14
+ let capability=null;
15
+
16
+ function coreConnected({childIdentity,protocolEra,catalogSha256}){
17
+ if(typeof childIdentity!=='string'||childIdentity.length<1||childIdentity.length>128) throw new Error('bridge child identity invalid');
18
+ if(protocolEra!=='modern'||!HEX64.test(String(catalogSha256))) throw new Error('bridge downstream attestation invalid');
19
+ core=Object.freeze({child_identity:childIdentity,protocol_era:protocolEra,catalog_sha256:catalogSha256});
20
+ phase='STARTING';diagnostic='capability attestation pending';
21
+ }
22
+ function capabilityObserved(manifest){
23
+ if(manifest?.schema!=='deadbyte.capability-manifest.v3'||!HEX64.test(String(manifest.snapshot_id))||!Number.isInteger(manifest.state_epoch)||manifest.state_epoch<1) throw new Error('bridge capability attestation invalid');
24
+ const observed=Date.parse(manifest.observed_at_utc),validUntil=Date.parse(manifest.valid_until_utc);
25
+ if(!Number.isFinite(observed)||!Number.isFinite(validUntil)||validUntil<observed) throw new Error('bridge capability timestamps invalid');
26
+ capability=Object.freeze({snapshot_id:manifest.snapshot_id,state_epoch:manifest.state_epoch,observed_at_ms:observed,
27
+ valid_until_ms:validUntil,release_manifest_sha256:HEX64.test(String(manifest.bindings?.release_manifest_sha256))?manifest.bindings.release_manifest_sha256:null,
28
+ generation_manifest_sha256:HEX64.test(String(manifest.bindings?.generation_manifest_sha256))?manifest.bindings.generation_manifest_sha256:null});
29
+ const unavailable=Object.entries(manifest.planes??{}).filter(([,value])=>value?.state==='DEGRADED'||value?.state==='UNAVAILABLE');
30
+ if(unavailable.length){
31
+ phase='DEGRADED';
32
+ diagnostic=bounded(unavailable.map(([id,value])=>`${id}:${value.state}:${value.diagnostic?.code??'unavailable'}`).join(','));
33
+ }else{phase='READY';diagnostic=null;}
34
+ }
35
+ function reconciling(reason){phase='RECONCILING';diagnostic=bounded(reason||'downstream reconciliation required');capability=null;core=null;}
36
+ function degraded(reason){phase='DEGRADED';diagnostic=bounded(reason||'downstream degraded');}
37
+ function stopping(){phase='STOPPING';diagnostic='bridge stopping';}
38
+ function snapshot(){
39
+ const now=Number(clock());
40
+ let state=phase,reason=diagnostic;
41
+ const stale=capability&&(now-capability.observed_at_ms>maxCapabilityAgeMs||now>capability.valid_until_ms);
42
+ if(phase==='READY'&&(!core||!capability||stale)){state='DEGRADED';reason=stale?'capability snapshot stale':'downstream attestation incomplete';}
43
+ if(!PHASES.has(state)) throw new Error('bridge health phase invalid');
44
+ const ready=state==='READY'&&Boolean(core)&&Boolean(capability);
45
+ return Object.freeze({schema:'deadbyte.bridge-health.v1',state,http_status:ready?200:503,ready,
46
+ diagnostic:reason?bounded(reason):null,core,capability:capability?Object.freeze({snapshot_id:capability.snapshot_id,
47
+ state_epoch:capability.state_epoch,observed_at_utc:new Date(capability.observed_at_ms).toISOString(),
48
+ valid_until_utc:new Date(capability.valid_until_ms).toISOString(),release_manifest_sha256:capability.release_manifest_sha256,
49
+ generation_manifest_sha256:capability.generation_manifest_sha256}):null});
50
+ }
51
+ return Object.freeze({coreConnected,capabilityObserved,reconciling,degraded,stopping,snapshot});
52
+ }