@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,146 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const MemberKindSchema: z.ZodEnum<{
|
|
3
|
+
human: "human";
|
|
4
|
+
agent: "agent";
|
|
5
|
+
extension: "extension";
|
|
6
|
+
system: "system";
|
|
7
|
+
bridge: "bridge";
|
|
8
|
+
}>;
|
|
9
|
+
export type MemberKind = z.infer<typeof MemberKindSchema>;
|
|
10
|
+
export declare const MemberStateSchema: z.ZodEnum<{
|
|
11
|
+
idle: "idle";
|
|
12
|
+
running: "running";
|
|
13
|
+
queued: "queued";
|
|
14
|
+
awaiting_input: "awaiting_input";
|
|
15
|
+
paused: "paused";
|
|
16
|
+
dead: "dead";
|
|
17
|
+
unreachable: "unreachable";
|
|
18
|
+
custody_uncertain: "custody_uncertain";
|
|
19
|
+
}>;
|
|
20
|
+
export type MemberState = z.infer<typeof MemberStateSchema>;
|
|
21
|
+
export declare const CustodySchema: z.ZodEnum<{
|
|
22
|
+
owned: "owned";
|
|
23
|
+
mirrored: "mirrored";
|
|
24
|
+
}>;
|
|
25
|
+
export type Custody = z.infer<typeof CustodySchema>;
|
|
26
|
+
export declare const RoleSchema: z.ZodEnum<{
|
|
27
|
+
owner: "owner";
|
|
28
|
+
admin: "admin";
|
|
29
|
+
member: "member";
|
|
30
|
+
observer: "observer";
|
|
31
|
+
}>;
|
|
32
|
+
export type Role = z.infer<typeof RoleSchema>;
|
|
33
|
+
export declare const HANDLE_REGEX: RegExp;
|
|
34
|
+
export declare const RESERVED_HANDLES: readonly ["all", "switchboard"];
|
|
35
|
+
/** Any syntactically valid handle (includes the reserved ones). */
|
|
36
|
+
export declare const HandleSchema: z.ZodString;
|
|
37
|
+
export type Handle = z.infer<typeof HandleSchema>;
|
|
38
|
+
/**
|
|
39
|
+
* A handle a real member may take: syntactically valid AND not reserved.
|
|
40
|
+
* `all` is the post-MVP broadcast channel; `switchboard` is the system member.
|
|
41
|
+
* All assignment paths (spawn, rename, join) validate against THIS schema.
|
|
42
|
+
*/
|
|
43
|
+
export declare const AssignableHandleSchema: z.ZodString;
|
|
44
|
+
/** Derives the strict member handle shown beneath a friendly starting-agent name. */
|
|
45
|
+
export declare function deriveAssignableHandle(name: string): string | undefined;
|
|
46
|
+
/** Provider-neutral turn and context telemetry. Percentages are deliberately
|
|
47
|
+
* absent: clients derive presentation from the reported used/max pair. */
|
|
48
|
+
export declare const AgentUsageSchema: z.ZodObject<{
|
|
49
|
+
inputTokens: z.ZodOptional<z.ZodNumber>;
|
|
50
|
+
cachedInputTokens: z.ZodOptional<z.ZodNumber>;
|
|
51
|
+
outputTokens: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
totalCostUsd: z.ZodOptional<z.ZodNumber>;
|
|
53
|
+
contextWindowMaxTokens: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
contextWindowUsedTokens: z.ZodOptional<z.ZodNumber>;
|
|
55
|
+
estimated: z.ZodOptional<z.ZodLiteral<true>>;
|
|
56
|
+
}, z.core.$strict>;
|
|
57
|
+
export type AgentUsage = z.infer<typeof AgentUsageSchema>;
|
|
58
|
+
/** One harness-reported rate-limit window (e.g. claude-code's five_hour /
|
|
59
|
+
* weekly). Only ever what the harness said — never derived or aged. */
|
|
60
|
+
export declare const AgentLimitSchema: z.ZodObject<{
|
|
61
|
+
window: z.ZodString;
|
|
62
|
+
status: z.ZodOptional<z.ZodString>;
|
|
63
|
+
resets_at: z.ZodOptional<z.ZodISODateTime>;
|
|
64
|
+
used_percent: z.ZodOptional<z.ZodNumber>;
|
|
65
|
+
}, z.core.$loose>;
|
|
66
|
+
export type AgentLimit = z.infer<typeof AgentLimitSchema>;
|
|
67
|
+
export declare const MemberSchema: z.ZodObject<{
|
|
68
|
+
id: z.ZodULID;
|
|
69
|
+
kind: z.ZodEnum<{
|
|
70
|
+
human: "human";
|
|
71
|
+
agent: "agent";
|
|
72
|
+
extension: "extension";
|
|
73
|
+
system: "system";
|
|
74
|
+
bridge: "bridge";
|
|
75
|
+
}>;
|
|
76
|
+
handle: z.ZodString;
|
|
77
|
+
display_name: z.ZodString;
|
|
78
|
+
purpose: z.ZodOptional<z.ZodString>;
|
|
79
|
+
harness: z.ZodOptional<z.ZodString>;
|
|
80
|
+
session_ref: z.ZodOptional<z.ZodString>;
|
|
81
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
82
|
+
policy: z.ZodOptional<z.ZodString>;
|
|
83
|
+
model: z.ZodOptional<z.ZodString>;
|
|
84
|
+
thinking: z.ZodOptional<z.ZodEnum<{
|
|
85
|
+
low: "low";
|
|
86
|
+
medium: "medium";
|
|
87
|
+
high: "high";
|
|
88
|
+
xhigh: "xhigh";
|
|
89
|
+
max: "max";
|
|
90
|
+
ultra: "ultra";
|
|
91
|
+
ultracode: "ultracode";
|
|
92
|
+
}>>;
|
|
93
|
+
host: z.ZodOptional<z.ZodString>;
|
|
94
|
+
limits: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
95
|
+
window: z.ZodString;
|
|
96
|
+
status: z.ZodOptional<z.ZodString>;
|
|
97
|
+
resets_at: z.ZodOptional<z.ZodISODateTime>;
|
|
98
|
+
used_percent: z.ZodOptional<z.ZodNumber>;
|
|
99
|
+
}, z.core.$loose>>>;
|
|
100
|
+
lastUsage: z.ZodOptional<z.ZodObject<{
|
|
101
|
+
inputTokens: z.ZodOptional<z.ZodNumber>;
|
|
102
|
+
cachedInputTokens: z.ZodOptional<z.ZodNumber>;
|
|
103
|
+
outputTokens: z.ZodOptional<z.ZodNumber>;
|
|
104
|
+
totalCostUsd: z.ZodOptional<z.ZodNumber>;
|
|
105
|
+
contextWindowMaxTokens: z.ZodOptional<z.ZodNumber>;
|
|
106
|
+
contextWindowUsedTokens: z.ZodOptional<z.ZodNumber>;
|
|
107
|
+
estimated: z.ZodOptional<z.ZodLiteral<true>>;
|
|
108
|
+
}, z.core.$strict>>;
|
|
109
|
+
state: z.ZodOptional<z.ZodEnum<{
|
|
110
|
+
idle: "idle";
|
|
111
|
+
running: "running";
|
|
112
|
+
queued: "queued";
|
|
113
|
+
awaiting_input: "awaiting_input";
|
|
114
|
+
paused: "paused";
|
|
115
|
+
dead: "dead";
|
|
116
|
+
unreachable: "unreachable";
|
|
117
|
+
custody_uncertain: "custody_uncertain";
|
|
118
|
+
}>>;
|
|
119
|
+
custody: z.ZodOptional<z.ZodEnum<{
|
|
120
|
+
owned: "owned";
|
|
121
|
+
mirrored: "mirrored";
|
|
122
|
+
}>>;
|
|
123
|
+
parent: z.ZodOptional<z.ZodULID>;
|
|
124
|
+
role: z.ZodOptional<z.ZodEnum<{
|
|
125
|
+
owner: "owner";
|
|
126
|
+
admin: "admin";
|
|
127
|
+
member: "member";
|
|
128
|
+
observer: "observer";
|
|
129
|
+
}>>;
|
|
130
|
+
conventions_sent: z.ZodDefault<z.ZodBoolean>;
|
|
131
|
+
misaddressed: z.ZodDefault<z.ZodBoolean>;
|
|
132
|
+
roster_stale: z.ZodDefault<z.ZodBoolean>;
|
|
133
|
+
removed_ts: z.ZodOptional<z.ZodISODateTime>;
|
|
134
|
+
waiting: z.ZodOptional<z.ZodObject<{
|
|
135
|
+
peers: z.ZodArray<z.ZodULID>;
|
|
136
|
+
reason: z.ZodEnum<{
|
|
137
|
+
any: "any";
|
|
138
|
+
reply: "reply";
|
|
139
|
+
mention: "mention";
|
|
140
|
+
}>;
|
|
141
|
+
since_ts: z.ZodISODateTime;
|
|
142
|
+
until_ts: z.ZodISODateTime;
|
|
143
|
+
}, z.core.$strip>>;
|
|
144
|
+
}, z.core.$strip>;
|
|
145
|
+
export type Member = z.infer<typeof MemberSchema>;
|
|
146
|
+
//# sourceMappingURL=member.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../src/member.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,gBAAgB;;;;;;EAA8D,CAAC;AAC5F,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,iBAAiB;;;;;;;;;EAS5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,aAAa;;;EAAgC,CAAC;AAC3D,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,UAAU;;;;;EAAmD,CAAC;AAC3E,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAG9C,eAAO,MAAM,YAAY,QAA8B,CAAC;AACxD,eAAO,MAAM,gBAAgB,iCAAkC,CAAC;AAEhE,mEAAmE;AACnE,eAAO,MAAM,YAAY,aAAiC,CAAC;AAC3D,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,aAGlC,CAAC;AAGF,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUvE;AAKD;0EAC0E;AAC1E,eAAO,MAAM,gBAAgB;;;;;;;;kBAwBzB,CAAC;AACL,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAI1D;wEACwE;AACxE,eAAO,MAAM,gBAAgB;;;;;iBAKnB,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyFrB,CAAC;AACL,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { ThinkingLevelSchema } from './adapter.js';
|
|
3
|
+
import { MemberIdSchema, TimestampSchema } from './ids.js';
|
|
4
|
+
export const MemberKindSchema = z.enum(['human', 'agent', 'extension', 'system', 'bridge']);
|
|
5
|
+
export const MemberStateSchema = z.enum([
|
|
6
|
+
'idle',
|
|
7
|
+
'running',
|
|
8
|
+
'queued',
|
|
9
|
+
'awaiting_input',
|
|
10
|
+
'paused',
|
|
11
|
+
'dead',
|
|
12
|
+
'unreachable', // resident switchboard offline (multi-box)
|
|
13
|
+
'custody_uncertain', // attach lease lost, native process not confirmed dead — do not drive
|
|
14
|
+
]);
|
|
15
|
+
export const CustodySchema = z.enum(['owned', 'mirrored']);
|
|
16
|
+
export const RoleSchema = z.enum(['owner', 'admin', 'member', 'observer']);
|
|
17
|
+
// harn:assume reserved-handles-rejected ref=handle-schema
|
|
18
|
+
export const HANDLE_REGEX = /^[a-z0-9][a-z0-9-]{1,30}$/;
|
|
19
|
+
export const RESERVED_HANDLES = ['all', 'switchboard'];
|
|
20
|
+
/** Any syntactically valid handle (includes the reserved ones). */
|
|
21
|
+
export const HandleSchema = z.string().regex(HANDLE_REGEX);
|
|
22
|
+
/**
|
|
23
|
+
* A handle a real member may take: syntactically valid AND not reserved.
|
|
24
|
+
* `all` is the post-MVP broadcast channel; `switchboard` is the system member.
|
|
25
|
+
* All assignment paths (spawn, rename, join) validate against THIS schema.
|
|
26
|
+
*/
|
|
27
|
+
export const AssignableHandleSchema = HandleSchema.refine((handle) => !RESERVED_HANDLES.includes(handle), { message: 'handle is reserved' });
|
|
28
|
+
// harn:assume starting-agent-name-derives-one-valid-identity-v6 ref=starting-agent-handle-derivation
|
|
29
|
+
/** Derives the strict member handle shown beneath a friendly starting-agent name. */
|
|
30
|
+
export function deriveAssignableHandle(name) {
|
|
31
|
+
const ascii = name
|
|
32
|
+
.normalize('NFKD')
|
|
33
|
+
.replace(/[\u0300-\u036f]/g, '')
|
|
34
|
+
.toLowerCase()
|
|
35
|
+
.replace(/[^a-z0-9]+/g, '-')
|
|
36
|
+
.replace(/^-+|-+$/g, '');
|
|
37
|
+
const bounded = ascii.slice(0, 31).replace(/-+$/g, '');
|
|
38
|
+
const candidate = bounded.length >= 2 ? bounded : 'agent';
|
|
39
|
+
return AssignableHandleSchema.safeParse(candidate).success ? candidate : undefined;
|
|
40
|
+
}
|
|
41
|
+
// harn:end starting-agent-name-derives-one-valid-identity-v6
|
|
42
|
+
// harn:end reserved-handles-rejected
|
|
43
|
+
// harn:assume normalized-agent-usage-telemetry-with-estimates ref=agent-usage-telemetry-schema
|
|
44
|
+
/** Provider-neutral turn and context telemetry. Percentages are deliberately
|
|
45
|
+
* absent: clients derive presentation from the reported used/max pair. */
|
|
46
|
+
export const AgentUsageSchema = z
|
|
47
|
+
.object({
|
|
48
|
+
inputTokens: z.number().int().nonnegative().optional(),
|
|
49
|
+
cachedInputTokens: z.number().int().nonnegative().optional(),
|
|
50
|
+
outputTokens: z.number().int().nonnegative().optional(),
|
|
51
|
+
totalCostUsd: z.number().nonnegative().optional(),
|
|
52
|
+
contextWindowMaxTokens: z.number().int().positive().optional(),
|
|
53
|
+
contextWindowUsedTokens: z.number().int().nonnegative().optional(),
|
|
54
|
+
/** True when derived from session artifacts (pre-turn peek), not reported
|
|
55
|
+
* live by the engine. Absence means engine-reported. */
|
|
56
|
+
estimated: z.literal(true).optional(),
|
|
57
|
+
})
|
|
58
|
+
.strict()
|
|
59
|
+
.superRefine((usage, ctx) => {
|
|
60
|
+
if ((usage.contextWindowMaxTokens === undefined) !==
|
|
61
|
+
(usage.contextWindowUsedTokens === undefined)) {
|
|
62
|
+
ctx.addIssue({
|
|
63
|
+
code: 'custom',
|
|
64
|
+
path: ['contextWindowUsedTokens'],
|
|
65
|
+
message: 'context window maximum and used tokens must be reported together',
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
// harn:end normalized-agent-usage-telemetry-with-estimates
|
|
70
|
+
// harn:assume agent-usage-limits-reported-not-guessed ref=agent-limit-schema
|
|
71
|
+
/** One harness-reported rate-limit window (e.g. claude-code's five_hour /
|
|
72
|
+
* weekly). Only ever what the harness said — never derived or aged. */
|
|
73
|
+
export const AgentLimitSchema = z.object({
|
|
74
|
+
window: z.string().min(1), // harness-native window name, open set
|
|
75
|
+
status: z.string().min(1).optional(), // e.g. allowed / allowed_warning / rejected
|
|
76
|
+
resets_at: TimestampSchema.optional(),
|
|
77
|
+
used_percent: z.number().min(0).max(100).optional(),
|
|
78
|
+
}).loose();
|
|
79
|
+
// harn:end agent-usage-limits-reported-not-guessed
|
|
80
|
+
export const MemberSchema = z
|
|
81
|
+
.object({
|
|
82
|
+
id: MemberIdSchema,
|
|
83
|
+
kind: MemberKindSchema,
|
|
84
|
+
handle: HandleSchema,
|
|
85
|
+
display_name: z.string(),
|
|
86
|
+
// harn:assume member-purpose-protocol-metadata ref=member-purpose-field
|
|
87
|
+
purpose: z.string().optional(),
|
|
88
|
+
// harn:end member-purpose-protocol-metadata
|
|
89
|
+
// agent + extension only:
|
|
90
|
+
harness: z.string().min(1).optional(), // adapter id, open set
|
|
91
|
+
session_ref: z.string().min(1).optional(), // harness-native resume token
|
|
92
|
+
cwd: z.string().min(1).optional(), // persisted launch dir — resume/revive MUST reuse it
|
|
93
|
+
policy: z.string().min(1).optional(), // sandbox/permission mode chip
|
|
94
|
+
// harn:assume agent-model-and-thinking-are-durable ref=durable-agent-config-schema
|
|
95
|
+
// Member state, not spawn-time arguments. The harness holds nothing: every turn is
|
|
96
|
+
// a fresh subprocess whose argv is re-derived from the session, so a rebuild that
|
|
97
|
+
// loses these downgrades the agent to its harness default without saying so.
|
|
98
|
+
// Absent means exactly that — the harness default — never a guess.
|
|
99
|
+
model: z.string().min(1).optional(),
|
|
100
|
+
thinking: ThinkingLevelSchema.optional(),
|
|
101
|
+
// harn:end agent-model-and-thinking-are-durable
|
|
102
|
+
host: z.string().min(1).optional(), // which switchboard machine owns the session
|
|
103
|
+
// harn:assume agent-usage-limits-reported-not-guessed ref=agent-limit-schema
|
|
104
|
+
// Last-known harness-reported rate-limit windows; absent when the harness
|
|
105
|
+
// reports none. Provider status, not configuration — refreshed by reports.
|
|
106
|
+
limits: z.array(AgentLimitSchema).optional(),
|
|
107
|
+
// harn:end agent-usage-limits-reported-not-guessed
|
|
108
|
+
// harn:assume normalized-agent-usage-telemetry-with-estimates ref=agent-usage-telemetry-schema
|
|
109
|
+
// harn:assume last-agent-usage-is-transient-and-seeded ref=last-usage-member-projection
|
|
110
|
+
lastUsage: AgentUsageSchema.optional(),
|
|
111
|
+
// harn:end last-agent-usage-is-transient-and-seeded
|
|
112
|
+
// harn:end normalized-agent-usage-telemetry-with-estimates
|
|
113
|
+
state: MemberStateSchema.optional(),
|
|
114
|
+
custody: CustodySchema.optional(),
|
|
115
|
+
parent: MemberIdSchema.optional(), // extensions only: spawning member
|
|
116
|
+
// humans only (enforcement lands M5):
|
|
117
|
+
role: RoleSchema.optional(),
|
|
118
|
+
// conventions trailer bookkeeping (persisted so restarts don't re-spam):
|
|
119
|
+
conventions_sent: z.boolean().default(false),
|
|
120
|
+
misaddressed: z.boolean().default(false),
|
|
121
|
+
// harn:assume roster-briefing-refreshes-on-membership ref=roster-stale-member-field
|
|
122
|
+
roster_stale: z.boolean().default(true),
|
|
123
|
+
// harn:end roster-briefing-refreshes-on-membership
|
|
124
|
+
// harn:assume member-removal-timestamp-protocol ref=member-removal-field
|
|
125
|
+
removed_ts: TimestampSchema.optional(),
|
|
126
|
+
// harn:end member-removal-timestamp-protocol
|
|
127
|
+
// harn:assume waiting-is-visible-member-state ref=member-waiting-field
|
|
128
|
+
// What this member is blocked on, if anything. Transient — it lives for the duration of
|
|
129
|
+
// a turn and is never persisted.
|
|
130
|
+
//
|
|
131
|
+
// An agent that is merely quiet is indistinguishable from an agent that is stuck, and
|
|
132
|
+
// the operator is the one who has to tell them apart. `peers` is who it waits on,
|
|
133
|
+
// `reason` is what would release it, `until_ts` is when it gives up. Absent means it is
|
|
134
|
+
// not waiting — which is what every member frame has meant until now.
|
|
135
|
+
waiting: z
|
|
136
|
+
.object({
|
|
137
|
+
peers: z.array(MemberIdSchema).min(1),
|
|
138
|
+
reason: z.enum(['reply', 'mention', 'any']),
|
|
139
|
+
since_ts: TimestampSchema,
|
|
140
|
+
until_ts: TimestampSchema,
|
|
141
|
+
})
|
|
142
|
+
.optional(),
|
|
143
|
+
// harn:end waiting-is-visible-member-state
|
|
144
|
+
})
|
|
145
|
+
.superRefine((member, ctx) => {
|
|
146
|
+
if (member.kind !== 'system' &&
|
|
147
|
+
RESERVED_HANDLES.includes(member.handle)) {
|
|
148
|
+
ctx.addIssue({
|
|
149
|
+
code: 'custom',
|
|
150
|
+
path: ['handle'],
|
|
151
|
+
message: `handle '${member.handle}' is reserved for the system member`,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
if (member.kind === 'human' && member.role === undefined) {
|
|
155
|
+
ctx.addIssue({
|
|
156
|
+
code: 'custom',
|
|
157
|
+
path: ['role'],
|
|
158
|
+
message: 'human members require a role',
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
else if (member.kind !== 'human' && member.role !== undefined) {
|
|
162
|
+
ctx.addIssue({
|
|
163
|
+
code: 'custom',
|
|
164
|
+
path: ['role'],
|
|
165
|
+
message: 'only human members may have a role',
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
//# sourceMappingURL=member.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member.js","sourceRoot":"","sources":["../src/member.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const MessageKindSchema: z.ZodEnum<{
|
|
3
|
+
system: "system";
|
|
4
|
+
chat: "chat";
|
|
5
|
+
run: "run";
|
|
6
|
+
ask: "ask";
|
|
7
|
+
approval: "approval";
|
|
8
|
+
}>;
|
|
9
|
+
export type MessageKind = z.infer<typeof MessageKindSchema>;
|
|
10
|
+
/**
|
|
11
|
+
* A mention resolved at post/finalize time to a STABLE member id plus the
|
|
12
|
+
* body span it occupies. Handles are never stored: renames change handles,
|
|
13
|
+
* but old messages keep resolving because spans point at `member_id`.
|
|
14
|
+
*/
|
|
15
|
+
export declare const MentionSpanSchema: z.ZodObject<{
|
|
16
|
+
member_id: z.ZodULID;
|
|
17
|
+
start: z.ZodNumber;
|
|
18
|
+
end: z.ZodNumber;
|
|
19
|
+
}, z.core.$strip>;
|
|
20
|
+
export type MentionSpan = z.infer<typeof MentionSpanSchema>;
|
|
21
|
+
export declare const BridgeOriginSchema: z.ZodObject<{
|
|
22
|
+
platform: z.ZodString;
|
|
23
|
+
external_id: z.ZodString;
|
|
24
|
+
sender_name: z.ZodString;
|
|
25
|
+
}, z.core.$strip>;
|
|
26
|
+
export type BridgeOrigin = z.infer<typeof BridgeOriginSchema>;
|
|
27
|
+
export declare const AskCardSchema: z.ZodObject<{
|
|
28
|
+
interaction_id: z.ZodString;
|
|
29
|
+
kind: z.ZodEnum<{
|
|
30
|
+
ask: "ask";
|
|
31
|
+
approval: "approval";
|
|
32
|
+
}>;
|
|
33
|
+
prompt: z.ZodString;
|
|
34
|
+
options: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
35
|
+
label: z.ZodString;
|
|
36
|
+
description: z.ZodOptional<z.ZodString>;
|
|
37
|
+
}, z.core.$strip>>>;
|
|
38
|
+
multi: z.ZodOptional<z.ZodBoolean>;
|
|
39
|
+
tool: z.ZodOptional<z.ZodString>;
|
|
40
|
+
detail: z.ZodOptional<z.ZodString>;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
export type AskCard = z.infer<typeof AskCardSchema>;
|
|
43
|
+
export declare const UsageSchema: z.ZodObject<{
|
|
44
|
+
input_tokens: z.ZodNumber;
|
|
45
|
+
output_tokens: z.ZodNumber;
|
|
46
|
+
cost_usd: z.ZodOptional<z.ZodNumber>;
|
|
47
|
+
}, z.core.$strip>;
|
|
48
|
+
export type Usage = z.infer<typeof UsageSchema>;
|
|
49
|
+
export declare const RunStatusSchema: z.ZodEnum<{
|
|
50
|
+
running: "running";
|
|
51
|
+
completed: "completed";
|
|
52
|
+
failed: "failed";
|
|
53
|
+
interrupted: "interrupted";
|
|
54
|
+
}>;
|
|
55
|
+
export type RunStatus = z.infer<typeof RunStatusSchema>;
|
|
56
|
+
export declare const RunSummarySchema: z.ZodObject<{
|
|
57
|
+
status: z.ZodEnum<{
|
|
58
|
+
running: "running";
|
|
59
|
+
completed: "completed";
|
|
60
|
+
failed: "failed";
|
|
61
|
+
interrupted: "interrupted";
|
|
62
|
+
}>;
|
|
63
|
+
started_ts: z.ZodISODateTime;
|
|
64
|
+
ended_ts: z.ZodOptional<z.ZodISODateTime>;
|
|
65
|
+
stalled_since: z.ZodOptional<z.ZodISODateTime>;
|
|
66
|
+
tool_calls: z.ZodNumber;
|
|
67
|
+
usage: z.ZodOptional<z.ZodObject<{
|
|
68
|
+
input_tokens: z.ZodNumber;
|
|
69
|
+
output_tokens: z.ZodNumber;
|
|
70
|
+
cost_usd: z.ZodOptional<z.ZodNumber>;
|
|
71
|
+
}, z.core.$strip>>;
|
|
72
|
+
events_ref: z.ZodString;
|
|
73
|
+
final_text: z.ZodOptional<z.ZodString>;
|
|
74
|
+
model: z.ZodOptional<z.ZodString>;
|
|
75
|
+
estimated_cost_usd: z.ZodOptional<z.ZodNumber>;
|
|
76
|
+
output_mode: z.ZodOptional<z.ZodLiteral<"messages">>;
|
|
77
|
+
result_message_id: z.ZodOptional<z.ZodNumber>;
|
|
78
|
+
error: z.ZodOptional<z.ZodString>;
|
|
79
|
+
}, z.core.$strip>;
|
|
80
|
+
export type RunSummary = z.infer<typeof RunSummarySchema>;
|
|
81
|
+
export declare const AttachmentSchema: z.ZodObject<{
|
|
82
|
+
id: z.ZodString;
|
|
83
|
+
name: z.ZodString;
|
|
84
|
+
mime: z.ZodString;
|
|
85
|
+
size: z.ZodNumber;
|
|
86
|
+
}, z.core.$strip>;
|
|
87
|
+
export type Attachment = z.infer<typeof AttachmentSchema>;
|
|
88
|
+
export declare const MessageSchema: z.ZodObject<{
|
|
89
|
+
id: z.ZodNumber;
|
|
90
|
+
room: z.ZodString;
|
|
91
|
+
author: z.ZodULID;
|
|
92
|
+
kind: z.ZodEnum<{
|
|
93
|
+
system: "system";
|
|
94
|
+
chat: "chat";
|
|
95
|
+
run: "run";
|
|
96
|
+
ask: "ask";
|
|
97
|
+
approval: "approval";
|
|
98
|
+
}>;
|
|
99
|
+
body: z.ZodString;
|
|
100
|
+
mentions: z.ZodArray<z.ZodObject<{
|
|
101
|
+
member_id: z.ZodULID;
|
|
102
|
+
start: z.ZodNumber;
|
|
103
|
+
end: z.ZodNumber;
|
|
104
|
+
}, z.core.$strip>>;
|
|
105
|
+
refs: z.ZodArray<z.ZodNumber>;
|
|
106
|
+
ledger_refs: z.ZodArray<z.ZodString>;
|
|
107
|
+
reply_to: z.ZodOptional<z.ZodNumber>;
|
|
108
|
+
run: z.ZodOptional<z.ZodObject<{
|
|
109
|
+
status: z.ZodEnum<{
|
|
110
|
+
running: "running";
|
|
111
|
+
completed: "completed";
|
|
112
|
+
failed: "failed";
|
|
113
|
+
interrupted: "interrupted";
|
|
114
|
+
}>;
|
|
115
|
+
started_ts: z.ZodISODateTime;
|
|
116
|
+
ended_ts: z.ZodOptional<z.ZodISODateTime>;
|
|
117
|
+
stalled_since: z.ZodOptional<z.ZodISODateTime>;
|
|
118
|
+
tool_calls: z.ZodNumber;
|
|
119
|
+
usage: z.ZodOptional<z.ZodObject<{
|
|
120
|
+
input_tokens: z.ZodNumber;
|
|
121
|
+
output_tokens: z.ZodNumber;
|
|
122
|
+
cost_usd: z.ZodOptional<z.ZodNumber>;
|
|
123
|
+
}, z.core.$strip>>;
|
|
124
|
+
events_ref: z.ZodString;
|
|
125
|
+
final_text: z.ZodOptional<z.ZodString>;
|
|
126
|
+
model: z.ZodOptional<z.ZodString>;
|
|
127
|
+
estimated_cost_usd: z.ZodOptional<z.ZodNumber>;
|
|
128
|
+
output_mode: z.ZodOptional<z.ZodLiteral<"messages">>;
|
|
129
|
+
result_message_id: z.ZodOptional<z.ZodNumber>;
|
|
130
|
+
error: z.ZodOptional<z.ZodString>;
|
|
131
|
+
}, z.core.$strip>>;
|
|
132
|
+
run_parent_id: z.ZodOptional<z.ZodNumber>;
|
|
133
|
+
ask: z.ZodOptional<z.ZodObject<{
|
|
134
|
+
interaction_id: z.ZodString;
|
|
135
|
+
kind: z.ZodEnum<{
|
|
136
|
+
ask: "ask";
|
|
137
|
+
approval: "approval";
|
|
138
|
+
}>;
|
|
139
|
+
prompt: z.ZodString;
|
|
140
|
+
options: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
141
|
+
label: z.ZodString;
|
|
142
|
+
description: z.ZodOptional<z.ZodString>;
|
|
143
|
+
}, z.core.$strip>>>;
|
|
144
|
+
multi: z.ZodOptional<z.ZodBoolean>;
|
|
145
|
+
tool: z.ZodOptional<z.ZodString>;
|
|
146
|
+
detail: z.ZodOptional<z.ZodString>;
|
|
147
|
+
}, z.core.$strip>>;
|
|
148
|
+
origin: z.ZodOptional<z.ZodObject<{
|
|
149
|
+
platform: z.ZodString;
|
|
150
|
+
external_id: z.ZodString;
|
|
151
|
+
sender_name: z.ZodString;
|
|
152
|
+
}, z.core.$strip>>;
|
|
153
|
+
ack: z.ZodOptional<z.ZodBoolean>;
|
|
154
|
+
pinned: z.ZodOptional<z.ZodBoolean>;
|
|
155
|
+
deleted: z.ZodOptional<z.ZodBoolean>;
|
|
156
|
+
attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
157
|
+
id: z.ZodString;
|
|
158
|
+
name: z.ZodString;
|
|
159
|
+
mime: z.ZodString;
|
|
160
|
+
size: z.ZodNumber;
|
|
161
|
+
}, z.core.$strip>>>;
|
|
162
|
+
ts: z.ZodISODateTime;
|
|
163
|
+
seq: z.ZodNumber;
|
|
164
|
+
}, z.core.$strip>;
|
|
165
|
+
export type Message = z.infer<typeof MessageSchema>;
|
|
166
|
+
//# sourceMappingURL=message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;EAAuD,CAAC;AACtF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;iBAMyD,CAAC;AACxF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;iBAQxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,WAAW;;;;iBAItB,CAAC;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEhD,eAAO,MAAM,eAAe;;;;;EAA4D,CAAC;AACzF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;iBAwB3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,gBAAgB;;;;;iBAK3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { MemberIdSchema, MessageIdSchema, RoomIdSchema, SeqSchema, TimestampSchema } from './ids.js';
|
|
3
|
+
export const MessageKindSchema = z.enum(['chat', 'run', 'ask', 'approval', 'system']);
|
|
4
|
+
// harn:assume mention-spans-survive-renames ref=mention-span-schema
|
|
5
|
+
/**
|
|
6
|
+
* A mention resolved at post/finalize time to a STABLE member id plus the
|
|
7
|
+
* body span it occupies. Handles are never stored: renames change handles,
|
|
8
|
+
* but old messages keep resolving because spans point at `member_id`.
|
|
9
|
+
*/
|
|
10
|
+
export const MentionSpanSchema = z
|
|
11
|
+
.object({
|
|
12
|
+
member_id: MemberIdSchema,
|
|
13
|
+
start: z.number().int().nonnegative(),
|
|
14
|
+
end: z.number().int().positive(),
|
|
15
|
+
})
|
|
16
|
+
.refine((span) => span.start < span.end, { message: 'span end must be after start' });
|
|
17
|
+
// harn:end mention-spans-survive-renames
|
|
18
|
+
export const BridgeOriginSchema = z.object({
|
|
19
|
+
platform: z.string().min(1), // 'slack' | 'telegram' | open set
|
|
20
|
+
external_id: z.string().min(1), // unique per (bridge member, platform) — dedup key
|
|
21
|
+
sender_name: z.string().min(1),
|
|
22
|
+
});
|
|
23
|
+
export const AskCardSchema = z.object({
|
|
24
|
+
interaction_id: z.string().min(1), // correlates with the pending native request
|
|
25
|
+
kind: z.enum(['ask', 'approval']),
|
|
26
|
+
prompt: z.string(),
|
|
27
|
+
options: z.array(z.object({ label: z.string().min(1), description: z.string().optional() })).optional(),
|
|
28
|
+
multi: z.boolean().optional(),
|
|
29
|
+
tool: z.string().optional(), // approvals: the tool/command being requested
|
|
30
|
+
detail: z.string().optional(), // approvals: command text / input summary
|
|
31
|
+
});
|
|
32
|
+
export const UsageSchema = z.object({
|
|
33
|
+
input_tokens: z.number().int().nonnegative(),
|
|
34
|
+
output_tokens: z.number().int().nonnegative(),
|
|
35
|
+
cost_usd: z.number().nonnegative().optional(), // absent for tokens-only harnesses (codex)
|
|
36
|
+
});
|
|
37
|
+
export const RunStatusSchema = z.enum(['running', 'completed', 'failed', 'interrupted']);
|
|
38
|
+
export const RunSummarySchema = z.object({
|
|
39
|
+
status: RunStatusSchema,
|
|
40
|
+
started_ts: TimestampSchema,
|
|
41
|
+
ended_ts: TimestampSchema.optional(),
|
|
42
|
+
stalled_since: TimestampSchema.optional(), // watchdog flag — informational only
|
|
43
|
+
tool_calls: z.number().int().nonnegative(),
|
|
44
|
+
usage: UsageSchema.optional(),
|
|
45
|
+
events_ref: z.string().min(1), // pointer to the JSONL event blob
|
|
46
|
+
final_text: z.string().optional(), // authoritative aggregate across all output rows
|
|
47
|
+
// harn:assume run-cost-estimates-are-finalization-snapshots ref=run-estimate-schema
|
|
48
|
+
/** Explicit model selected when this lifecycle root was first admitted. */
|
|
49
|
+
model: z.string().min(1).optional(),
|
|
50
|
+
/** Immutable advisory list-price estimate, stored only when exact cost is absent. */
|
|
51
|
+
estimated_cost_usd: z.number().nonnegative().optional(),
|
|
52
|
+
// harn:end run-cost-estimates-are-finalization-snapshots
|
|
53
|
+
// harn:assume continuation-writer-follows-journaled-output-ownership ref=continuation-message-schema
|
|
54
|
+
/** New turns opt into permanent per-stretch output rows; absent is stored legacy history. */
|
|
55
|
+
output_mode: z.literal('messages').optional(),
|
|
56
|
+
/** Permanent message id containing the terminal visible stretch/result. */
|
|
57
|
+
result_message_id: MessageIdSchema.optional(),
|
|
58
|
+
// harn:end continuation-writer-follows-journaled-output-ownership
|
|
59
|
+
// harn:assume failed-run-details-never-route-as-replies ref=failed-run-error-schema
|
|
60
|
+
error: z.string().min(1).optional(), // failed-run detail — evidence, never reply text
|
|
61
|
+
// harn:end failed-run-details-never-route-as-replies
|
|
62
|
+
});
|
|
63
|
+
export const AttachmentSchema = z.object({
|
|
64
|
+
id: z.string().min(1), // server-issued handle; also the on-disk file name
|
|
65
|
+
name: z.string().min(1), // original filename — metadata only, never a path
|
|
66
|
+
mime: z.string().min(1),
|
|
67
|
+
size: z.number().int().nonnegative(),
|
|
68
|
+
});
|
|
69
|
+
export const MessageSchema = z.object({
|
|
70
|
+
id: MessageIdSchema,
|
|
71
|
+
room: RoomIdSchema,
|
|
72
|
+
author: MemberIdSchema,
|
|
73
|
+
kind: MessageKindSchema,
|
|
74
|
+
body: z.string(),
|
|
75
|
+
mentions: z.array(MentionSpanSchema),
|
|
76
|
+
refs: z.array(MessageIdSchema), // #ids referenced anywhere in body
|
|
77
|
+
ledger_refs: z.array(z.string()), // [[note]] names referenced
|
|
78
|
+
reply_to: MessageIdSchema.optional(), // threading hint; never affects routing
|
|
79
|
+
run: RunSummarySchema.optional(), // kind='run' only
|
|
80
|
+
// harn:assume continuation-writer-follows-journaled-output-ownership ref=continuation-message-schema
|
|
81
|
+
/** A continuation's lifecycle root. Root run messages omit this and carry `run`. */
|
|
82
|
+
run_parent_id: MessageIdSchema.optional(),
|
|
83
|
+
// harn:end continuation-writer-follows-journaled-output-ownership
|
|
84
|
+
ask: AskCardSchema.optional(), // kind='ask'|'approval' only
|
|
85
|
+
origin: BridgeOriginSchema.optional(), // bridge-authored only
|
|
86
|
+
// harn:assume acknowledgement-marker-protocol ref=message-ack-field
|
|
87
|
+
ack: z.boolean().optional(), // absent is the additive false/default state
|
|
88
|
+
// harn:end acknowledgement-marker-protocol
|
|
89
|
+
pinned: z.boolean().optional(), // durable owner/admin marker; absent is the additive default
|
|
90
|
+
deleted: z.boolean().optional(), // purged tombstone marker; absent is the additive live default
|
|
91
|
+
attachments: z.array(AttachmentSchema).optional(), // uploaded files; absent is the additive default
|
|
92
|
+
ts: TimestampSchema,
|
|
93
|
+
seq: SeqSchema, // room change-sequence at last insert/update
|
|
94
|
+
});
|
|
95
|
+
//# sourceMappingURL=message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":"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"}
|