@richhardry/codor 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/LICENSE +21 -0
- package/README.md +293 -0
- package/bin/codor.mjs +7 -0
- package/node_modules/@codor/adapter-antigravity/dist/adapter.d.ts +41 -0
- package/node_modules/@codor/adapter-antigravity/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-antigravity/dist/adapter.js +275 -0
- package/node_modules/@codor/adapter-antigravity/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-antigravity/dist/index.d.ts +2 -0
- package/node_modules/@codor/adapter-antigravity/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-antigravity/dist/index.js +2 -0
- package/node_modules/@codor/adapter-antigravity/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-antigravity/package.json +18 -0
- package/node_modules/@codor/adapter-claude-code/dist/adapter.d.ts +94 -0
- package/node_modules/@codor/adapter-claude-code/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/adapter.js +785 -0
- package/node_modules/@codor/adapter-claude-code/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/index.d.ts +8 -0
- package/node_modules/@codor/adapter-claude-code/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/index.js +5 -0
- package/node_modules/@codor/adapter-claude-code/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/limits-probe.d.ts +18 -0
- package/node_modules/@codor/adapter-claude-code/dist/limits-probe.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/limits-probe.js +67 -0
- package/node_modules/@codor/adapter-claude-code/dist/limits-probe.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/peek.d.ts +3 -0
- package/node_modules/@codor/adapter-claude-code/dist/peek.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/peek.js +128 -0
- package/node_modules/@codor/adapter-claude-code/dist/peek.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/query.d.ts +9 -0
- package/node_modules/@codor/adapter-claude-code/dist/query.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/query.js +7 -0
- package/node_modules/@codor/adapter-claude-code/dist/query.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/translate.d.ts +40 -0
- package/node_modules/@codor/adapter-claude-code/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-claude-code/dist/translate.js +505 -0
- package/node_modules/@codor/adapter-claude-code/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-claude-code/package.json +18 -0
- package/node_modules/@codor/adapter-codex/dist/adapter.d.ts +105 -0
- package/node_modules/@codor/adapter-codex/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/adapter.js +625 -0
- package/node_modules/@codor/adapter-codex/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/app-server-transport.d.ts +39 -0
- package/node_modules/@codor/adapter-codex/dist/app-server-transport.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/app-server-transport.js +186 -0
- package/node_modules/@codor/adapter-codex/dist/app-server-transport.js.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/index.d.ts +8 -0
- package/node_modules/@codor/adapter-codex/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/index.js +5 -0
- package/node_modules/@codor/adapter-codex/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/limits-probe.d.ts +18 -0
- package/node_modules/@codor/adapter-codex/dist/limits-probe.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/limits-probe.js +87 -0
- package/node_modules/@codor/adapter-codex/dist/limits-probe.js.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/peek.d.ts +3 -0
- package/node_modules/@codor/adapter-codex/dist/peek.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/peek.js +98 -0
- package/node_modules/@codor/adapter-codex/dist/peek.js.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/translate.d.ts +17 -0
- package/node_modules/@codor/adapter-codex/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-codex/dist/translate.js +286 -0
- package/node_modules/@codor/adapter-codex/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-codex/package.json +17 -0
- package/node_modules/@codor/adapter-copilot/dist/adapter.d.ts +40 -0
- package/node_modules/@codor/adapter-copilot/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-copilot/dist/adapter.js +190 -0
- package/node_modules/@codor/adapter-copilot/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-copilot/dist/index.d.ts +4 -0
- package/node_modules/@codor/adapter-copilot/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-copilot/dist/index.js +3 -0
- package/node_modules/@codor/adapter-copilot/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-copilot/dist/translate.d.ts +11 -0
- package/node_modules/@codor/adapter-copilot/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-copilot/dist/translate.js +184 -0
- package/node_modules/@codor/adapter-copilot/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-copilot/package.json +18 -0
- package/node_modules/@codor/adapter-cursor/dist/adapter.d.ts +32 -0
- package/node_modules/@codor/adapter-cursor/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-cursor/dist/adapter.js +179 -0
- package/node_modules/@codor/adapter-cursor/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-cursor/dist/index.d.ts +9 -0
- package/node_modules/@codor/adapter-cursor/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-cursor/dist/index.js +8 -0
- package/node_modules/@codor/adapter-cursor/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-cursor/dist/translate.d.ts +15 -0
- package/node_modules/@codor/adapter-cursor/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-cursor/dist/translate.js +164 -0
- package/node_modules/@codor/adapter-cursor/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-cursor/package.json +17 -0
- package/node_modules/@codor/adapter-gemini/dist/adapter.d.ts +36 -0
- package/node_modules/@codor/adapter-gemini/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-gemini/dist/adapter.js +245 -0
- package/node_modules/@codor/adapter-gemini/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-gemini/dist/index.d.ts +4 -0
- package/node_modules/@codor/adapter-gemini/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-gemini/dist/index.js +3 -0
- package/node_modules/@codor/adapter-gemini/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-gemini/dist/translate.d.ts +12 -0
- package/node_modules/@codor/adapter-gemini/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-gemini/dist/translate.js +123 -0
- package/node_modules/@codor/adapter-gemini/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-gemini/package.json +18 -0
- package/node_modules/@codor/adapter-opencode/dist/adapter.d.ts +42 -0
- package/node_modules/@codor/adapter-opencode/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/adapter-opencode/dist/adapter.js +240 -0
- package/node_modules/@codor/adapter-opencode/dist/adapter.js.map +1 -0
- package/node_modules/@codor/adapter-opencode/dist/index.d.ts +4 -0
- package/node_modules/@codor/adapter-opencode/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/adapter-opencode/dist/index.js +3 -0
- package/node_modules/@codor/adapter-opencode/dist/index.js.map +1 -0
- package/node_modules/@codor/adapter-opencode/dist/translate.d.ts +12 -0
- package/node_modules/@codor/adapter-opencode/dist/translate.d.ts.map +1 -0
- package/node_modules/@codor/adapter-opencode/dist/translate.js +144 -0
- package/node_modules/@codor/adapter-opencode/dist/translate.js.map +1 -0
- package/node_modules/@codor/adapter-opencode/package.json +18 -0
- package/node_modules/@codor/cli/dist/artifact.d.ts +33 -0
- package/node_modules/@codor/cli/dist/artifact.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/artifact.js +183 -0
- package/node_modules/@codor/cli/dist/artifact.js.map +1 -0
- package/node_modules/@codor/cli/dist/attach.d.ts +25 -0
- package/node_modules/@codor/cli/dist/attach.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/attach.js +133 -0
- package/node_modules/@codor/cli/dist/attach.js.map +1 -0
- package/node_modules/@codor/cli/dist/connection.d.ts +21 -0
- package/node_modules/@codor/cli/dist/connection.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/connection.js +130 -0
- package/node_modules/@codor/cli/dist/connection.js.map +1 -0
- package/node_modules/@codor/cli/dist/detect.d.ts +14 -0
- package/node_modules/@codor/cli/dist/detect.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/detect.js +99 -0
- package/node_modules/@codor/cli/dist/detect.js.map +1 -0
- package/node_modules/@codor/cli/dist/index.d.ts +17 -0
- package/node_modules/@codor/cli/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/index.js +24 -0
- package/node_modules/@codor/cli/dist/index.js.map +1 -0
- package/node_modules/@codor/cli/dist/mirror.d.ts +4 -0
- package/node_modules/@codor/cli/dist/mirror.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/mirror.js +93 -0
- package/node_modules/@codor/cli/dist/mirror.js.map +1 -0
- package/node_modules/@codor/cli/dist/program.d.ts +17 -0
- package/node_modules/@codor/cli/dist/program.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/program.js +1068 -0
- package/node_modules/@codor/cli/dist/program.js.map +1 -0
- package/node_modules/@codor/cli/dist/runtime-install.d.ts +61 -0
- package/node_modules/@codor/cli/dist/runtime-install.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/runtime-install.js +122 -0
- package/node_modules/@codor/cli/dist/runtime-install.js.map +1 -0
- package/node_modules/@codor/cli/dist/runtime-paths.d.ts +24 -0
- package/node_modules/@codor/cli/dist/runtime-paths.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/runtime-paths.js +69 -0
- package/node_modules/@codor/cli/dist/runtime-paths.js.map +1 -0
- package/node_modules/@codor/cli/dist/setup-flow.d.ts +69 -0
- package/node_modules/@codor/cli/dist/setup-flow.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/setup-flow.js +110 -0
- package/node_modules/@codor/cli/dist/setup-flow.js.map +1 -0
- package/node_modules/@codor/cli/dist/setup-session.d.ts +105 -0
- package/node_modules/@codor/cli/dist/setup-session.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/setup-session.js +346 -0
- package/node_modules/@codor/cli/dist/setup-session.js.map +1 -0
- package/node_modules/@codor/cli/dist/setup-ui.d.ts +93 -0
- package/node_modules/@codor/cli/dist/setup-ui.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/setup-ui.js +249 -0
- package/node_modules/@codor/cli/dist/setup-ui.js.map +1 -0
- package/node_modules/@codor/cli/dist/setup.d.ts +108 -0
- package/node_modules/@codor/cli/dist/setup.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/setup.js +878 -0
- package/node_modules/@codor/cli/dist/setup.js.map +1 -0
- package/node_modules/@codor/cli/dist/terminal-keys.d.ts +26 -0
- package/node_modules/@codor/cli/dist/terminal-keys.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/terminal-keys.js +70 -0
- package/node_modules/@codor/cli/dist/terminal-keys.js.map +1 -0
- package/node_modules/@codor/cli/dist/terminal-qr.d.ts +2 -0
- package/node_modules/@codor/cli/dist/terminal-qr.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/terminal-qr.js +30 -0
- package/node_modules/@codor/cli/dist/terminal-qr.js.map +1 -0
- package/node_modules/@codor/cli/dist/up.d.ts +52 -0
- package/node_modules/@codor/cli/dist/up.d.ts.map +1 -0
- package/node_modules/@codor/cli/dist/up.js +178 -0
- package/node_modules/@codor/cli/dist/up.js.map +1 -0
- package/node_modules/@codor/cli/package.json +24 -0
- package/node_modules/@codor/cli/packaging/systemd/codor.service +21 -0
- package/node_modules/@codor/cli/runtime/web/assets/LandingPage-BOmG5kSw.js +31 -0
- package/node_modules/@codor/cli/runtime/web/assets/LedgerPage-CecuTS8-.js +1 -0
- package/node_modules/@codor/cli/runtime/web/assets/NoChannels-CYiBXGQd.js +11 -0
- package/node_modules/@codor/cli/runtime/web/assets/PairingCodeInput-Cr6XDWx-.js +1 -0
- package/node_modules/@codor/cli/runtime/web/assets/PairingPage-CQBWNA2L.js +6 -0
- package/node_modules/@codor/cli/runtime/web/assets/SettingsPage-DGLbSXE7.js +16 -0
- package/node_modules/@codor/cli/runtime/web/assets/StartupUnavailable-DdQBHip_.js +1 -0
- package/node_modules/@codor/cli/runtime/web/assets/arrow-left-BOpjMuRi.js +6 -0
- package/node_modules/@codor/cli/runtime/web/assets/browser-BWQYNOsD.js +6 -0
- package/node_modules/@codor/cli/runtime/web/assets/graph-toBZHlC0.js +1 -0
- package/node_modules/@codor/cli/runtime/web/assets/index-Cxi54Xim.js +408 -0
- package/node_modules/@codor/cli/runtime/web/assets/index-DjwJakJC.css +1 -0
- package/node_modules/@codor/cli/runtime/web/assets/qr-DpynCwP9.js +8 -0
- package/node_modules/@codor/cli/runtime/web/assets/react-C8w-UNLI.js +32 -0
- package/node_modules/@codor/cli/runtime/web/assets/sodium-DtsvMzX9.js +1 -0
- package/node_modules/@codor/cli/runtime/web/codor-192.png +0 -0
- package/node_modules/@codor/cli/runtime/web/codor-512.png +0 -0
- package/node_modules/@codor/cli/runtime/web/codor-apple-touch-180.png +0 -0
- package/node_modules/@codor/cli/runtime/web/codor-favicon.svg +86 -0
- package/node_modules/@codor/cli/runtime/web/codor-mark.svg +86 -0
- package/node_modules/@codor/cli/runtime/web/codor-maskable-512.png +0 -0
- package/node_modules/@codor/cli/runtime/web/codor-og.png +0 -0
- package/node_modules/@codor/cli/runtime/web/fonts/BitcountPropSingle-latin.woff2 +0 -0
- package/node_modules/@codor/cli/runtime/web/fonts/Geist-Variable.woff2 +0 -0
- package/node_modules/@codor/cli/runtime/web/fonts/GeistMono-Variable.woff2 +0 -0
- package/node_modules/@codor/cli/runtime/web/fonts/OFL.txt +93 -0
- package/node_modules/@codor/cli/runtime/web/index.html +53 -0
- package/node_modules/@codor/cli/runtime/web/manifest.webmanifest +1 -0
- package/node_modules/@codor/cli/runtime/web/sw.js +2 -0
- package/node_modules/@codor/protocol/dist/adapter.d.ts +118 -0
- package/node_modules/@codor/protocol/dist/adapter.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/adapter.js +15 -0
- package/node_modules/@codor/protocol/dist/adapter.js.map +1 -0
- package/node_modules/@codor/protocol/dist/body.d.ts +14 -0
- package/node_modules/@codor/protocol/dist/body.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/body.js +50 -0
- package/node_modules/@codor/protocol/dist/body.js.map +1 -0
- package/node_modules/@codor/protocol/dist/changelog.d.ts +30 -0
- package/node_modules/@codor/protocol/dist/changelog.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/changelog.js +19 -0
- package/node_modules/@codor/protocol/dist/changelog.js.map +1 -0
- package/node_modules/@codor/protocol/dist/default-recipient.d.ts +8 -0
- package/node_modules/@codor/protocol/dist/default-recipient.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/default-recipient.js +19 -0
- package/node_modules/@codor/protocol/dist/default-recipient.js.map +1 -0
- package/node_modules/@codor/protocol/dist/delivery.d.ts +42 -0
- package/node_modules/@codor/protocol/dist/delivery.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/delivery.js +44 -0
- package/node_modules/@codor/protocol/dist/delivery.js.map +1 -0
- package/node_modules/@codor/protocol/dist/events.d.ts +284 -0
- package/node_modules/@codor/protocol/dist/events.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/events.js +150 -0
- package/node_modules/@codor/protocol/dist/events.js.map +1 -0
- package/node_modules/@codor/protocol/dist/ids.d.ts +19 -0
- package/node_modules/@codor/protocol/dist/ids.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/ids.js +27 -0
- package/node_modules/@codor/protocol/dist/ids.js.map +1 -0
- package/node_modules/@codor/protocol/dist/index.d.ts +14 -0
- package/node_modules/@codor/protocol/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/index.js +14 -0
- package/node_modules/@codor/protocol/dist/index.js.map +1 -0
- package/node_modules/@codor/protocol/dist/interaction.d.ts +45 -0
- package/node_modules/@codor/protocol/dist/interaction.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/interaction.js +33 -0
- package/node_modules/@codor/protocol/dist/interaction.js.map +1 -0
- package/node_modules/@codor/protocol/dist/member.d.ts +146 -0
- package/node_modules/@codor/protocol/dist/member.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/member.js +169 -0
- package/node_modules/@codor/protocol/dist/member.js.map +1 -0
- package/node_modules/@codor/protocol/dist/message.d.ts +166 -0
- package/node_modules/@codor/protocol/dist/message.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/message.js +95 -0
- package/node_modules/@codor/protocol/dist/message.js.map +1 -0
- package/node_modules/@codor/protocol/dist/observability.d.ts +80 -0
- package/node_modules/@codor/protocol/dist/observability.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/observability.js +41 -0
- package/node_modules/@codor/protocol/dist/observability.js.map +1 -0
- package/node_modules/@codor/protocol/dist/room.d.ts +430 -0
- package/node_modules/@codor/protocol/dist/room.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/room.js +142 -0
- package/node_modules/@codor/protocol/dist/room.js.map +1 -0
- package/node_modules/@codor/protocol/dist/ws.d.ts +1348 -0
- package/node_modules/@codor/protocol/dist/ws.d.ts.map +1 -0
- package/node_modules/@codor/protocol/dist/ws.js +282 -0
- package/node_modules/@codor/protocol/dist/ws.js.map +1 -0
- package/node_modules/@codor/protocol/package.json +17 -0
- package/node_modules/@codor/switchboard/dist/adapter-registry.d.ts +14 -0
- package/node_modules/@codor/switchboard/dist/adapter-registry.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/adapter-registry.js +175 -0
- package/node_modules/@codor/switchboard/dist/adapter-registry.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/authorization.d.ts +13 -0
- package/node_modules/@codor/switchboard/dist/authorization.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/authorization.js +96 -0
- package/node_modules/@codor/switchboard/dist/authorization.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/blobs.d.ts +17 -0
- package/node_modules/@codor/switchboard/dist/blobs.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/blobs.js +54 -0
- package/node_modules/@codor/switchboard/dist/blobs.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/collaboration.d.ts +115 -0
- package/node_modules/@codor/switchboard/dist/collaboration.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/collaboration.js +123 -0
- package/node_modules/@codor/switchboard/dist/collaboration.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/continuation.d.ts +33 -0
- package/node_modules/@codor/switchboard/dist/continuation.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/continuation.js +177 -0
- package/node_modules/@codor/switchboard/dist/continuation.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.d.ts +22 -0
- package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.js +92 -0
- package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/challenge.d.ts +37 -0
- package/node_modules/@codor/switchboard/dist/crypto/challenge.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/challenge.js +132 -0
- package/node_modules/@codor/switchboard/dist/crypto/challenge.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/keys.d.ts +41 -0
- package/node_modules/@codor/switchboard/dist/crypto/keys.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/keys.js +145 -0
- package/node_modules/@codor/switchboard/dist/crypto/keys.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/pairing.d.ts +53 -0
- package/node_modules/@codor/switchboard/dist/crypto/pairing.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/pairing.js +182 -0
- package/node_modules/@codor/switchboard/dist/crypto/pairing.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/roomkeys.d.ts +30 -0
- package/node_modules/@codor/switchboard/dist/crypto/roomkeys.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/crypto/roomkeys.js +101 -0
- package/node_modules/@codor/switchboard/dist/crypto/roomkeys.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/daemon.d.ts +545 -0
- package/node_modules/@codor/switchboard/dist/daemon.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/daemon.js +3907 -0
- package/node_modules/@codor/switchboard/dist/daemon.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/fake-adapter.d.ts +103 -0
- package/node_modules/@codor/switchboard/dist/fake-adapter.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/fake-adapter.js +228 -0
- package/node_modules/@codor/switchboard/dist/fake-adapter.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/index.d.ts +44 -0
- package/node_modules/@codor/switchboard/dist/index.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/index.js +24 -0
- package/node_modules/@codor/switchboard/dist/index.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/resolve.d.ts +12 -0
- package/node_modules/@codor/switchboard/dist/ledger/resolve.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/resolve.js +17 -0
- package/node_modules/@codor/switchboard/dist/ledger/resolve.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/vault.d.ts +47 -0
- package/node_modules/@codor/switchboard/dist/ledger/vault.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/vault.js +175 -0
- package/node_modules/@codor/switchboard/dist/ledger/vault.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/watch.d.ts +73 -0
- package/node_modules/@codor/switchboard/dist/ledger/watch.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/ledger/watch.js +232 -0
- package/node_modules/@codor/switchboard/dist/ledger/watch.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/local-dirs.d.ts +14 -0
- package/node_modules/@codor/switchboard/dist/local-dirs.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/local-dirs.js +40 -0
- package/node_modules/@codor/switchboard/dist/local-dirs.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/local-socket.d.ts +3 -0
- package/node_modules/@codor/switchboard/dist/local-socket.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/local-socket.js +16 -0
- package/node_modules/@codor/switchboard/dist/local-socket.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/pricing.d.ts +32 -0
- package/node_modules/@codor/switchboard/dist/pricing.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/pricing.js +64 -0
- package/node_modules/@codor/switchboard/dist/pricing.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/process-liveness.d.ts +2 -0
- package/node_modules/@codor/switchboard/dist/process-liveness.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/process-liveness.js +9 -0
- package/node_modules/@codor/switchboard/dist/process-liveness.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/push/producer.d.ts +54 -0
- package/node_modules/@codor/switchboard/dist/push/producer.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/push/producer.js +168 -0
- package/node_modules/@codor/switchboard/dist/push/producer.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/push/subscriptions.d.ts +29 -0
- package/node_modules/@codor/switchboard/dist/push/subscriptions.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/push/subscriptions.js +83 -0
- package/node_modules/@codor/switchboard/dist/push/subscriptions.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/redact.d.ts +11 -0
- package/node_modules/@codor/switchboard/dist/redact.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/redact.js +65 -0
- package/node_modules/@codor/switchboard/dist/redact.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/residency.d.ts +110 -0
- package/node_modules/@codor/switchboard/dist/residency.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/residency.js +587 -0
- package/node_modules/@codor/switchboard/dist/residency.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/router.d.ts +120 -0
- package/node_modules/@codor/switchboard/dist/router.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/router.js +198 -0
- package/node_modules/@codor/switchboard/dist/router.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/server.d.ts +50 -0
- package/node_modules/@codor/switchboard/dist/server.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/server.js +1425 -0
- package/node_modules/@codor/switchboard/dist/server.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/store.d.ts +534 -0
- package/node_modules/@codor/switchboard/dist/store.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/store.js +2625 -0
- package/node_modules/@codor/switchboard/dist/store.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/transport/hyperswarm.d.ts +59 -0
- package/node_modules/@codor/switchboard/dist/transport/hyperswarm.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/transport/hyperswarm.js +183 -0
- package/node_modules/@codor/switchboard/dist/transport/hyperswarm.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/transport/peer.d.ts +87 -0
- package/node_modules/@codor/switchboard/dist/transport/peer.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/transport/peer.js +316 -0
- package/node_modules/@codor/switchboard/dist/transport/peer.js.map +1 -0
- package/node_modules/@codor/switchboard/dist/working-directory.d.ts +2 -0
- package/node_modules/@codor/switchboard/dist/working-directory.d.ts.map +1 -0
- package/node_modules/@codor/switchboard/dist/working-directory.js +26 -0
- package/node_modules/@codor/switchboard/dist/working-directory.js.map +1 -0
- package/node_modules/@codor/switchboard/package.json +33 -0
- package/package.json +58 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { WireEvent } from './events.js';
|
|
3
|
+
import type { AgentLimit, AgentUsage } from './member.js';
|
|
4
|
+
export declare const PolicySchema: z.ZodEnum<{
|
|
5
|
+
"read-only": "read-only";
|
|
6
|
+
"workspace-write": "workspace-write";
|
|
7
|
+
"full-access": "full-access";
|
|
8
|
+
}>;
|
|
9
|
+
export type Policy = z.infer<typeof PolicySchema>;
|
|
10
|
+
/** Legacy choices for thinking-capable third-party adapters without an exact declaration. */
|
|
11
|
+
export declare const DEFAULT_THINKING_LEVELS: readonly ["low", "medium", "high"];
|
|
12
|
+
export declare const ThinkingLevelSchema: z.ZodEnum<{
|
|
13
|
+
low: "low";
|
|
14
|
+
medium: "medium";
|
|
15
|
+
high: "high";
|
|
16
|
+
xhigh: "xhigh";
|
|
17
|
+
max: "max";
|
|
18
|
+
ultra: "ultra";
|
|
19
|
+
ultracode: "ultracode";
|
|
20
|
+
}>;
|
|
21
|
+
export type ThinkingLevel = z.infer<typeof ThinkingLevelSchema>;
|
|
22
|
+
/** Harness-native session/rollout id — the resume token and identity anchor. */
|
|
23
|
+
export type SessionRef = string;
|
|
24
|
+
/**
|
|
25
|
+
* A live handle on a harness session. Adapters may carry more state
|
|
26
|
+
* internally; this is the shape the switchboard sees. `session_ref` is
|
|
27
|
+
* undefined only between `spawn()` and the harness first reporting its id
|
|
28
|
+
* (claude: `system/init.session_id`; codex: `thread.started.thread_id`).
|
|
29
|
+
*/
|
|
30
|
+
export interface Session {
|
|
31
|
+
harness: string;
|
|
32
|
+
session_ref?: SessionRef;
|
|
33
|
+
cwd: string;
|
|
34
|
+
model?: string;
|
|
35
|
+
policy?: string;
|
|
36
|
+
thinking?: ThinkingLevel;
|
|
37
|
+
env?: Record<string, string>;
|
|
38
|
+
}
|
|
39
|
+
export interface SpawnOpts {
|
|
40
|
+
cwd: string;
|
|
41
|
+
model?: string;
|
|
42
|
+
policy?: string;
|
|
43
|
+
thinking?: ThinkingLevel;
|
|
44
|
+
}
|
|
45
|
+
export interface AdapterCapabilities {
|
|
46
|
+
resume: boolean;
|
|
47
|
+
discover: boolean;
|
|
48
|
+
interactiveAttach: boolean;
|
|
49
|
+
ask: boolean;
|
|
50
|
+
approvals: 'runtime' | 'spawn-time';
|
|
51
|
+
extensions: boolean;
|
|
52
|
+
thinking: boolean;
|
|
53
|
+
/** Exact accepted values. Absent preserves low/medium/high for older adapters. */
|
|
54
|
+
thinking_levels?: readonly ThinkingLevel[];
|
|
55
|
+
policies: Record<Policy, string | null>;
|
|
56
|
+
live_inbox?: boolean;
|
|
57
|
+
}
|
|
58
|
+
/** Durable lifecycle facts reported while a turn is still in progress. */
|
|
59
|
+
/**
|
|
60
|
+
* The models a harness will accept. `discovered` means the adapter asked the
|
|
61
|
+
* harness itself (its own listing command, run locally, zero spend); `curated`
|
|
62
|
+
* means the CLI offers no listing command, so the ids are cited in that
|
|
63
|
+
* adapter's NOTES.md. Model ids churn — the web must never hardcode one.
|
|
64
|
+
*/
|
|
65
|
+
export interface ModelCatalog {
|
|
66
|
+
models: string[];
|
|
67
|
+
source: 'discovered' | 'curated';
|
|
68
|
+
}
|
|
69
|
+
export interface AdapterTurnHooks {
|
|
70
|
+
/** Called after the adapter runtime accepts the turn; a retained provider process may repeat its pid. */
|
|
71
|
+
onStarted?(process: {
|
|
72
|
+
pid?: number;
|
|
73
|
+
process_group_id?: number;
|
|
74
|
+
}): void;
|
|
75
|
+
/** Called as soon as provider output or an RPC response reveals the native resume token. */
|
|
76
|
+
onSessionRef?(session_ref: SessionRef): void;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Adapters normalize one harness turn at a time. A driver may supervise a
|
|
80
|
+
* per-turn CLI subprocess or retain a provider-owned streaming runtime across
|
|
81
|
+
* deliver() calls; either way one deliver() call still yields exactly one turn.
|
|
82
|
+
*/
|
|
83
|
+
export interface HarnessAdapter {
|
|
84
|
+
id: string;
|
|
85
|
+
capabilities: AdapterCapabilities;
|
|
86
|
+
spawn(opts: SpawnOpts): Session;
|
|
87
|
+
attach(session_ref: SessionRef): Session;
|
|
88
|
+
/**
|
|
89
|
+
* Optional: estimate a session's current context from the harness's own
|
|
90
|
+
* on-disk artifacts WITHOUT running a turn. Returns an AgentUsage flagged
|
|
91
|
+
* estimated, or undefined when artifacts are missing/unreadable. The
|
|
92
|
+
* artifact is the only source that reflects out-of-band activity (e.g. an
|
|
93
|
+
* interactive /compact), so implementations must read it, never a cache.
|
|
94
|
+
*/
|
|
95
|
+
peekContextUsage?(session_ref: SessionRef): Promise<AgentUsage | undefined>;
|
|
96
|
+
/**
|
|
97
|
+
* The models this harness accepts. Omitted when the harness cannot say.
|
|
98
|
+
* Never called on a request path — the daemon discovers in the background.
|
|
99
|
+
*/
|
|
100
|
+
listModels?(): Promise<ModelCatalog>;
|
|
101
|
+
/** Account-level rate-limit windows reported by the harness provider. */
|
|
102
|
+
probeLimits?(): Promise<AgentLimit[] | undefined>;
|
|
103
|
+
deliver(session: Session, payload: string, hooks?: AdapterTurnHooks): AsyncIterable<WireEvent>;
|
|
104
|
+
/** Resolves on adapter acknowledgement (the interaction is truly answered). */
|
|
105
|
+
respondInteraction(session: Session, interaction_id: string, answer: unknown): Promise<void>;
|
|
106
|
+
interrupt(session: Session): void;
|
|
107
|
+
/**
|
|
108
|
+
* Optional: compact this session's context using the harness's OWN
|
|
109
|
+
* compaction — an unwrapped slash command for a persistent SDK session, a
|
|
110
|
+
* native RPC for an app server. Codor never calls this on its own: it exists
|
|
111
|
+
* so an operator watching the ring can ask, and only for an idle session.
|
|
112
|
+
* Resolves with the engine's re-baselined usage when it reports one, so the
|
|
113
|
+
* ring updates without waiting for the next turn; undefined when it does not.
|
|
114
|
+
*/
|
|
115
|
+
compactSession?(session: Session): Promise<AgentUsage | undefined>;
|
|
116
|
+
discoverSessions(): SessionRef[];
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
// harn:assume canonical-spawn-controls-enforced ref=canonical-policy-thinking-enforcement
|
|
3
|
+
export const PolicySchema = z.enum(['read-only', 'workspace-write', 'full-access']);
|
|
4
|
+
// harn:assume harness-declares-supported-thinking-levels ref=adapter-thinking-level-contract
|
|
5
|
+
/** Legacy choices for thinking-capable third-party adapters without an exact declaration. */
|
|
6
|
+
export const DEFAULT_THINKING_LEVELS = ['low', 'medium', 'high'];
|
|
7
|
+
export const ThinkingLevelSchema = z.enum([
|
|
8
|
+
...DEFAULT_THINKING_LEVELS,
|
|
9
|
+
'xhigh',
|
|
10
|
+
'max',
|
|
11
|
+
'ultra',
|
|
12
|
+
'ultracode',
|
|
13
|
+
]);
|
|
14
|
+
// harn:end claude-agent-sdk-query-is-the-session-runtime
|
|
15
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,0FAA0F;AAC1F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC;AAGpF,6FAA6F;AAC7F,6FAA6F;AAC7F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAC1E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC;IACxC,GAAG,uBAAuB;IAC1B,OAAO;IACP,KAAK;IACL,OAAO;IACP,WAAW;CACZ,CAAC,CAAC;AA0IH,yDAAyD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Member } from './member.js';
|
|
2
|
+
import type { MentionSpan } from './message.js';
|
|
3
|
+
export interface ParsedBody {
|
|
4
|
+
mentions: MentionSpan[];
|
|
5
|
+
refs: number[];
|
|
6
|
+
ledger_refs: string[];
|
|
7
|
+
/** Handle-shaped tokens that matched no member (misaddressing signal). */
|
|
8
|
+
unresolved: string[];
|
|
9
|
+
}
|
|
10
|
+
/** A member the grammar can address: humans and agents in any state. */
|
|
11
|
+
export declare function isAddressable(member: Member): boolean;
|
|
12
|
+
/** The single PROTOCOL SS3 body grammar used by routing and destination preview. */
|
|
13
|
+
export declare function parseBody(body: string, members: Member[]): ParsedBody;
|
|
14
|
+
//# sourceMappingURL=body.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../src/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAID,wEAAwE;AAExE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErD;AAUD,oFAAoF;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,CAgCrE"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { HANDLE_REGEX } from './member.js';
|
|
2
|
+
const RESERVED_TOKENS = new Set(['all', 'switchboard']);
|
|
3
|
+
/** A member the grammar can address: humans and agents in any state. */
|
|
4
|
+
// harn:assume extensions-not-addressable-v1 ref=extension-addressability-filter
|
|
5
|
+
export function isAddressable(member) {
|
|
6
|
+
return member.kind === 'human' || member.kind === 'agent';
|
|
7
|
+
}
|
|
8
|
+
// harn:end extensions-not-addressable-v1
|
|
9
|
+
/** Replaces fenced blocks and inline code with spaces while preserving offsets. */
|
|
10
|
+
function blankCodeSpans(body) {
|
|
11
|
+
const blank = (match) => match.replace(/[^\n]/g, ' ');
|
|
12
|
+
return body.replace(/```[\s\S]*?(```|$)/g, blank).replace(/`[^`\n]*`/g, blank);
|
|
13
|
+
}
|
|
14
|
+
// harn:assume body-parser-shared-across-router-and-web ref=shared-body-parser
|
|
15
|
+
/** The single PROTOCOL SS3 body grammar used by routing and destination preview. */
|
|
16
|
+
export function parseBody(body, members) {
|
|
17
|
+
const byHandle = new Map(members.map((member) => [member.handle, member]));
|
|
18
|
+
const scan = blankCodeSpans(body);
|
|
19
|
+
const mentions = [];
|
|
20
|
+
const unresolved = [];
|
|
21
|
+
const mentionRe = /(^|[^\w`@])@([a-z0-9][a-z0-9-]*)/g;
|
|
22
|
+
for (const match of scan.matchAll(mentionRe)) {
|
|
23
|
+
const handle = match[2];
|
|
24
|
+
const start = match.index + match[1].length;
|
|
25
|
+
if (!HANDLE_REGEX.test(handle) || RESERVED_TOKENS.has(handle))
|
|
26
|
+
continue;
|
|
27
|
+
const member = byHandle.get(handle);
|
|
28
|
+
if (member && isAddressable(member)) {
|
|
29
|
+
mentions.push({ member_id: member.id, start, end: start + handle.length + 1 });
|
|
30
|
+
}
|
|
31
|
+
else if (!member) {
|
|
32
|
+
unresolved.push(handle);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
const refs = [];
|
|
36
|
+
for (const match of scan.matchAll(/(^|[^\w#])#(\d+)/g)) {
|
|
37
|
+
const id = Number(match[2]);
|
|
38
|
+
if (id > 0 && !refs.includes(id))
|
|
39
|
+
refs.push(id);
|
|
40
|
+
}
|
|
41
|
+
const ledger_refs = [];
|
|
42
|
+
for (const match of scan.matchAll(/\[\[([^\[\]\n]+)\]\]/g)) {
|
|
43
|
+
const name = match[1].trim();
|
|
44
|
+
if (name !== '' && !ledger_refs.includes(name))
|
|
45
|
+
ledger_refs.push(name);
|
|
46
|
+
}
|
|
47
|
+
return { mentions, refs, ledger_refs, unresolved: [...new Set(unresolved)] };
|
|
48
|
+
}
|
|
49
|
+
// harn:end body-parser-shared-across-router-and-web
|
|
50
|
+
//# sourceMappingURL=body.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"body.js","sourceRoot":"","sources":["../src/body.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* The per-room change log records EVERY insert and in-place update of any
|
|
4
|
+
* client-visible entity — messages (incl. run finalization), members, human
|
|
5
|
+
* inbox records, meters, room config. `seq` is the ONLY delta-sync cursor:
|
|
6
|
+
* clients reconnect with `since_seq` and hydrate changed rows from the log
|
|
7
|
+
* (message-id cursors cannot express in-place run finalizations).
|
|
8
|
+
*/
|
|
9
|
+
export declare const ChangeEntitySchema: z.ZodEnum<{
|
|
10
|
+
message: "message";
|
|
11
|
+
member: "member";
|
|
12
|
+
room: "room";
|
|
13
|
+
inbox: "inbox";
|
|
14
|
+
meter: "meter";
|
|
15
|
+
}>;
|
|
16
|
+
export type ChangeEntity = z.infer<typeof ChangeEntitySchema>;
|
|
17
|
+
export declare const ChangeLogEntrySchema: z.ZodObject<{
|
|
18
|
+
room: z.ZodString;
|
|
19
|
+
seq: z.ZodNumber;
|
|
20
|
+
entity: z.ZodEnum<{
|
|
21
|
+
message: "message";
|
|
22
|
+
member: "member";
|
|
23
|
+
room: "room";
|
|
24
|
+
inbox: "inbox";
|
|
25
|
+
meter: "meter";
|
|
26
|
+
}>;
|
|
27
|
+
entity_id: z.ZodString;
|
|
28
|
+
}, z.core.$strip>;
|
|
29
|
+
export type ChangeLogEntry = z.infer<typeof ChangeLogEntrySchema>;
|
|
30
|
+
//# sourceMappingURL=changelog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../src/changelog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;;;;EAA0D,CAAC;AAC1F,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;iBAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { RoomIdSchema, SeqSchema } from './ids.js';
|
|
3
|
+
// harn:assume changelog-is-sync-cursor ref=changelog-entry-schema
|
|
4
|
+
/**
|
|
5
|
+
* The per-room change log records EVERY insert and in-place update of any
|
|
6
|
+
* client-visible entity — messages (incl. run finalization), members, human
|
|
7
|
+
* inbox records, meters, room config. `seq` is the ONLY delta-sync cursor:
|
|
8
|
+
* clients reconnect with `since_seq` and hydrate changed rows from the log
|
|
9
|
+
* (message-id cursors cannot express in-place run finalizations).
|
|
10
|
+
*/
|
|
11
|
+
export const ChangeEntitySchema = z.enum(['message', 'member', 'inbox', 'meter', 'room']);
|
|
12
|
+
export const ChangeLogEntrySchema = z.object({
|
|
13
|
+
room: RoomIdSchema,
|
|
14
|
+
seq: SeqSchema,
|
|
15
|
+
entity: ChangeEntitySchema,
|
|
16
|
+
entity_id: z.string().min(1), // stringified: message id, member ulid, delivery id, …
|
|
17
|
+
});
|
|
18
|
+
// harn:end changelog-is-sync-cursor
|
|
19
|
+
//# sourceMappingURL=changelog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changelog.js","sourceRoot":"","sources":["../src/changelog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEnD,kEAAkE;AAClE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAG1F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,SAAS;IACd,MAAM,EAAE,kBAAkB;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,uDAAuD;CACtF,CAAC,CAAC;AAEH,oCAAoC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Member } from './member.js';
|
|
2
|
+
export interface EffectiveDefaultAgentContext {
|
|
3
|
+
members: readonly Member[];
|
|
4
|
+
latestFinalizedAgentId?: string;
|
|
5
|
+
startingAgentHandle?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function effectiveDefaultAgent(context: EffectiveDefaultAgentContext): Member | undefined;
|
|
8
|
+
//# sourceMappingURL=default-recipient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-recipient.d.ts","sourceRoot":"","sources":["../src/default-recipient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AASD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,4BAA4B,GACpC,MAAM,GAAG,SAAS,CAcpB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const activeAgent = (member) => member.kind === 'agent' && member.removed_ts === undefined;
|
|
2
|
+
const liveAgent = (member) => activeAgent(member) && member.state !== 'dead';
|
|
3
|
+
// harn:assume default-recipient-fallback-chain ref=effective-default-agent
|
|
4
|
+
export function effectiveDefaultAgent(context) {
|
|
5
|
+
if (context.latestFinalizedAgentId !== undefined) {
|
|
6
|
+
const latest = context.members.find((member) => member.id === context.latestFinalizedAgentId && activeAgent(member));
|
|
7
|
+
if (latest)
|
|
8
|
+
return latest;
|
|
9
|
+
}
|
|
10
|
+
const live = context.members.filter(liveAgent);
|
|
11
|
+
if (context.startingAgentHandle !== undefined) {
|
|
12
|
+
const starting = live.find((member) => member.handle === context.startingAgentHandle);
|
|
13
|
+
if (starting)
|
|
14
|
+
return starting;
|
|
15
|
+
}
|
|
16
|
+
return live.length === 1 ? live[0] : undefined;
|
|
17
|
+
}
|
|
18
|
+
// harn:end default-recipient-fallback-chain
|
|
19
|
+
//# sourceMappingURL=default-recipient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-recipient.js","sourceRoot":"","sources":["../src/default-recipient.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,GAAG,CAAC,MAAc,EAAW,EAAE,CAC9C,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC;AAE7D,MAAM,SAAS,GAAG,CAAC,MAAc,EAAW,EAAE,CAC5C,WAAW,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC;AAEjD,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CACnC,OAAqC;IAErC,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CACjC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,sBAAsB,IAAI,WAAW,CAAC,MAAM,CAAC,CAChF,CAAC;QACF,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;IAC5B,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACtF,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AACD,4CAA4C"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Per-member FIFO inbox record. Exactly-once-or-held (PROTOCOL §3):
|
|
4
|
+
*
|
|
5
|
+
* queued — waiting for the recipient to go idle (or be revived)
|
|
6
|
+
* delivering — attempt WAL: bound to `run_msg_id` BEFORE the turn spawns
|
|
7
|
+
* consumed — run.completed landed (agents) / inbox record created (humans)
|
|
8
|
+
* held — ambiguous crash reconcile or brake breach; operator releases
|
|
9
|
+
*
|
|
10
|
+
* Human recipients never get turns: their delivery is an inbox record whose
|
|
11
|
+
* read lifecycle is `read_ts` (+ the `mark_read` act).
|
|
12
|
+
*/
|
|
13
|
+
export declare const DeliveryStateSchema: z.ZodEnum<{
|
|
14
|
+
queued: "queued";
|
|
15
|
+
delivering: "delivering";
|
|
16
|
+
consumed: "consumed";
|
|
17
|
+
held: "held";
|
|
18
|
+
}>;
|
|
19
|
+
export type DeliveryState = z.infer<typeof DeliveryStateSchema>;
|
|
20
|
+
export declare const DeliverySchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
room: z.ZodString;
|
|
23
|
+
message_id: z.ZodNumber;
|
|
24
|
+
recipient: z.ZodULID;
|
|
25
|
+
state: z.ZodEnum<{
|
|
26
|
+
queued: "queued";
|
|
27
|
+
delivering: "delivering";
|
|
28
|
+
consumed: "consumed";
|
|
29
|
+
held: "held";
|
|
30
|
+
}>;
|
|
31
|
+
hop_count: z.ZodOptional<z.ZodNumber>;
|
|
32
|
+
attempt_count: z.ZodDefault<z.ZodNumber>;
|
|
33
|
+
batch_id: z.ZodOptional<z.ZodString>;
|
|
34
|
+
run_msg_id: z.ZodOptional<z.ZodNumber>;
|
|
35
|
+
read_ts: z.ZodOptional<z.ZodISODateTime>;
|
|
36
|
+
interaction_resolved_ts: z.ZodOptional<z.ZodISODateTime>;
|
|
37
|
+
group_id: z.ZodOptional<z.ZodString>;
|
|
38
|
+
group_round: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
ts: z.ZodISODateTime;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
export type Delivery = z.infer<typeof DeliverySchema>;
|
|
42
|
+
//# sourceMappingURL=delivery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB;;;;;EAAuD,CAAC;AACxF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;iBA4BzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { MemberIdSchema, MessageIdSchema, RoomIdSchema, TimestampSchema } from './ids.js';
|
|
3
|
+
/**
|
|
4
|
+
* Per-member FIFO inbox record. Exactly-once-or-held (PROTOCOL §3):
|
|
5
|
+
*
|
|
6
|
+
* queued — waiting for the recipient to go idle (or be revived)
|
|
7
|
+
* delivering — attempt WAL: bound to `run_msg_id` BEFORE the turn spawns
|
|
8
|
+
* consumed — run.completed landed (agents) / inbox record created (humans)
|
|
9
|
+
* held — ambiguous crash reconcile or brake breach; operator releases
|
|
10
|
+
*
|
|
11
|
+
* Human recipients never get turns: their delivery is an inbox record whose
|
|
12
|
+
* read lifecycle is `read_ts` (+ the `mark_read` act).
|
|
13
|
+
*/
|
|
14
|
+
export const DeliveryStateSchema = z.enum(['queued', 'delivering', 'consumed', 'held']);
|
|
15
|
+
export const DeliverySchema = z.object({
|
|
16
|
+
id: z.string().min(1),
|
|
17
|
+
room: RoomIdSchema,
|
|
18
|
+
message_id: MessageIdSchema, // the routed message
|
|
19
|
+
recipient: MemberIdSchema,
|
|
20
|
+
state: DeliveryStateSchema,
|
|
21
|
+
hop_count: z.number().int().nonnegative().optional(),
|
|
22
|
+
attempt_count: z.number().int().nonnegative().default(0),
|
|
23
|
+
batch_id: z.string().min(1).optional(), // set when drained as part of a batched turn
|
|
24
|
+
run_msg_id: MessageIdSchema.optional(), // attempt WAL: the run message this attempt feeds
|
|
25
|
+
read_ts: TimestampSchema.optional(), // human inbox read lifecycle
|
|
26
|
+
// harn:assume approval-deliveries-project-resolution-separately ref=approval-delivery-resolution-schema
|
|
27
|
+
// Approval resolution is lifecycle state, not evidence that a notification was read.
|
|
28
|
+
interaction_resolved_ts: TimestampSchema.optional(),
|
|
29
|
+
// harn:end approval-deliveries-project-resolution-separately
|
|
30
|
+
// harn:assume collaboration-groups-are-durable-state ref=collaboration-delivery-association-schema
|
|
31
|
+
group_id: z.string().min(1).optional(),
|
|
32
|
+
group_round: z.number().int().positive().optional(),
|
|
33
|
+
// harn:end collaboration-groups-are-durable-state
|
|
34
|
+
ts: TimestampSchema,
|
|
35
|
+
}).superRefine((delivery, ctx) => {
|
|
36
|
+
if ((delivery.group_id === undefined) !== (delivery.group_round === undefined)) {
|
|
37
|
+
ctx.addIssue({
|
|
38
|
+
code: 'custom',
|
|
39
|
+
path: [delivery.group_id === undefined ? 'group_id' : 'group_round'],
|
|
40
|
+
message: 'group_id and group_round must be provided together',
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=delivery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE1F;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAGxF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,eAAe,EAAE,qBAAqB;IAClD,SAAS,EAAE,cAAc;IACzB,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACpD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,6CAA6C;IACrF,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE,kDAAkD;IAC1F,OAAO,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE,6BAA6B;IAClE,wGAAwG;IACxG,qFAAqF;IACrF,uBAAuB,EAAE,eAAe,CAAC,QAAQ,EAAE;IACnD,6DAA6D;IAC7D,mGAAmG;IACnG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,kDAAkD;IAClD,EAAE,EAAE,eAAe;CACpB,CAAC,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;IAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC;YACpE,OAAO,EAAE,oDAAoD;SAC9D,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}
|