@maudecode/talaria-web 1.20.0 → 1.22.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/_release.json +8 -8
- package/dist/api/automation-router.d.ts +319 -14
- package/dist/api/automation-router.js +21 -1
- package/dist/api/automation-router.js.map +1 -1
- package/dist/api/chat-router.d.ts +615 -69
- package/dist/api/chat-router.js +22 -170
- package/dist/api/chat-router.js.map +1 -1
- package/dist/api/git-router.d.ts +50 -0
- package/dist/api/git-router.js +17 -4
- package/dist/api/git-router.js.map +1 -1
- package/dist/api/groups-router.d.ts +764 -0
- package/dist/api/groups-router.js +79 -0
- package/dist/api/groups-router.js.map +1 -0
- package/dist/api/raw-routes.js +3 -1
- package/dist/api/raw-routes.js.map +1 -1
- package/dist/api/router.d.ts +1 -1
- package/dist/api/sessions-router.d.ts +1675 -167
- package/dist/api/sessions-router.js +67 -53
- package/dist/api/sessions-router.js.map +1 -1
- package/dist/api/settings-router.d.ts +911 -1
- package/dist/api/settings-router.js +53 -2
- package/dist/api/settings-router.js.map +1 -1
- package/dist/api/sse-routes.d.ts +1 -1
- package/dist/api/sse-routes.js +15 -5
- package/dist/api/sse-routes.js.map +1 -1
- package/dist/api/tools-raw.js +27 -136
- package/dist/api/tools-raw.js.map +1 -1
- package/dist/api/tools-router.d.ts +588 -51
- package/dist/api/tools-router.js +98 -16
- package/dist/api/tools-router.js.map +1 -1
- package/dist/app.js +5 -1
- package/dist/app.js.map +1 -1
- package/dist/auth/gate.js +5 -1
- package/dist/auth/gate.js.map +1 -1
- package/dist/config/agent-config.d.ts +6 -1
- package/dist/config/agent-config.js +75 -3
- package/dist/config/agent-config.js.map +1 -1
- package/dist/feedback.d.ts +18 -0
- package/dist/feedback.js +145 -0
- package/dist/feedback.js.map +1 -0
- package/dist/fs/stat.d.ts +2 -0
- package/dist/fs/stat.js +4 -0
- package/dist/fs/stat.js.map +1 -1
- package/dist/http/context.d.ts +9 -0
- package/dist/http/context.js +0 -6
- package/dist/http/context.js.map +1 -1
- package/dist/http/pinned.js +19 -8
- package/dist/http/pinned.js.map +1 -1
- package/dist/providers/catalog.d.ts +9 -1
- package/dist/providers/catalog.js +86 -6
- package/dist/providers/catalog.js.map +1 -1
- package/dist/redact.d.ts +2 -0
- package/dist/redact.js +26 -5
- package/dist/redact.js.map +1 -1
- package/dist/runtime.js +62 -11
- package/dist/runtime.js.map +1 -1
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -1
- package/dist/sessions/admission.d.ts +21 -0
- package/dist/sessions/admission.js +176 -0
- package/dist/sessions/admission.js.map +1 -0
- package/dist/sessions/anchor.d.ts +5 -2
- package/dist/sessions/anchor.js +14 -13
- package/dist/sessions/anchor.js.map +1 -1
- package/dist/sessions/background-tasks.d.ts +19 -1
- package/dist/sessions/background-tasks.js +36 -6
- package/dist/sessions/background-tasks.js.map +1 -1
- package/dist/sessions/cli-sessions.js +11 -6
- package/dist/sessions/cli-sessions.js.map +1 -1
- package/dist/sessions/compress.d.ts +10 -9
- package/dist/sessions/compress.js +31 -20
- package/dist/sessions/compress.js.map +1 -1
- package/dist/sessions/events.d.ts +3 -0
- package/dist/sessions/events.js +4 -0
- package/dist/sessions/events.js.map +1 -1
- package/dist/sessions/gateway-sessions.d.ts +61 -2
- package/dist/sessions/gateway-sessions.js +223 -35
- package/dist/sessions/gateway-sessions.js.map +1 -1
- package/dist/sessions/gateway-watcher.js +8 -4
- package/dist/sessions/gateway-watcher.js.map +1 -1
- package/dist/sessions/groups.d.ts +60 -0
- package/dist/sessions/groups.js +339 -0
- package/dist/sessions/groups.js.map +1 -0
- package/dist/sessions/list.d.ts +7 -2
- package/dist/sessions/list.js +13 -4
- package/dist/sessions/list.js.map +1 -1
- package/dist/sessions/merge.d.ts +15 -5
- package/dist/sessions/merge.js +49 -15
- package/dist/sessions/merge.js.map +1 -1
- package/dist/sessions/pending.d.ts +1 -1
- package/dist/sessions/pending.js +15 -6
- package/dist/sessions/pending.js.map +1 -1
- package/dist/sessions/prefix-index.d.ts +9 -14
- package/dist/sessions/prefix-index.js +14 -52
- package/dist/sessions/prefix-index.js.map +1 -1
- package/dist/sessions/prompt-queues.d.ts +36 -0
- package/dist/sessions/prompt-queues.js +318 -0
- package/dist/sessions/prompt-queues.js.map +1 -0
- package/dist/sessions/reasoning-display.d.ts +2 -0
- package/dist/sessions/reasoning-display.js +31 -0
- package/dist/sessions/reasoning-display.js.map +1 -0
- package/dist/sessions/relay.d.ts +16 -2
- package/dist/sessions/relay.js +119 -24
- package/dist/sessions/relay.js.map +1 -1
- package/dist/sessions/service.d.ts +33 -3
- package/dist/sessions/service.js +304 -70
- package/dist/sessions/service.js.map +1 -1
- package/dist/sessions/session.d.ts +6 -0
- package/dist/sessions/session.js +14 -0
- package/dist/sessions/session.js.map +1 -1
- package/dist/sessions/shares.d.ts +1 -1
- package/dist/sessions/shares.js +13 -4
- package/dist/sessions/shares.js.map +1 -1
- package/dist/sessions/state-db.d.ts +2 -1
- package/dist/sessions/state-db.js +7 -3
- package/dist/sessions/state-db.js.map +1 -1
- package/dist/sessions/storage/json-documents.js +3 -0
- package/dist/sessions/storage/json-documents.js.map +1 -1
- package/dist/sessions/store.d.ts +2 -0
- package/dist/sessions/store.js +11 -3
- package/dist/sessions/store.js.map +1 -1
- package/dist/sessions/streams.d.ts +4 -0
- package/dist/sessions/streams.js +12 -0
- package/dist/sessions/streams.js.map +1 -1
- package/dist/sessions/todo.js +10 -1
- package/dist/sessions/todo.js.map +1 -1
- package/dist/sessions/tool-display.d.ts +8 -1
- package/dist/sessions/tool-display.js +39 -4
- package/dist/sessions/tool-display.js.map +1 -1
- package/dist/sessions/turn.d.ts +4 -1
- package/dist/sessions/turn.js +53 -22
- package/dist/sessions/turn.js.map +1 -1
- package/dist/settings.js +2 -1
- package/dist/settings.js.map +1 -1
- package/dist/spa.js +1 -1
- package/dist/spa.js.map +1 -1
- package/dist/test/group-fixture.d.ts +66 -0
- package/dist/test/group-fixture.js +89 -0
- package/dist/test/group-fixture.js.map +1 -0
- package/dist/test/harness.d.ts +3 -0
- package/dist/test/harness.js +3 -0
- package/dist/test/harness.js.map +1 -1
- package/dist/tools/connectors.d.ts +9 -1
- package/dist/tools/connectors.js +48 -0
- package/dist/tools/connectors.js.map +1 -1
- package/dist/tools/kanban.d.ts +10 -1
- package/dist/tools/kanban.js +73 -1
- package/dist/tools/kanban.js.map +1 -1
- package/dist/tools/mcp.d.ts +3 -1
- package/dist/tools/mcp.js +73 -0
- package/dist/tools/mcp.js.map +1 -1
- package/dist/tools/memory.d.ts +28 -0
- package/dist/tools/memory.js +120 -14
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/skills.d.ts +6 -0
- package/dist/tools/skills.js +17 -0
- package/dist/tools/skills.js.map +1 -1
- package/dist/tools/update-notifications.d.ts +12 -10
- package/dist/tools/update-notifications.js +124 -14
- package/dist/tools/update-notifications.js.map +1 -1
- package/dist/tools/updates.d.ts +38 -12
- package/dist/tools/updates.js +180 -44
- package/dist/tools/updates.js.map +1 -1
- package/dist/workspace/fs.d.ts +2 -0
- package/dist/workspace/fs.js +63 -1
- package/dist/workspace/fs.js.map +1 -1
- package/dist/workspace/managed-buffers.d.ts +58 -0
- package/dist/workspace/managed-buffers.js +76 -0
- package/dist/workspace/managed-buffers.js.map +1 -0
- package/dist/workspace/rollback.js +1 -1
- package/dist/workspace/rollback.js.map +1 -1
- package/dist/workspace/upload.d.ts +1 -1
- package/dist/workspace/upload.js +52 -37
- package/dist/workspace/upload.js.map +1 -1
- package/dist/workspace/workspaces.d.ts +5 -1
- package/dist/workspace/workspaces.js +32 -6
- package/dist/workspace/workspaces.js.map +1 -1
- package/package.json +2 -2
- package/sidecar/agent_dependency.json +4 -4
- package/sidecar/agent_importer.json +8 -0
- package/sidecar/agent_support.json +20 -8
- package/sidecar/scripts/agent_importer_contract.py +19 -0
- package/sidecar/scripts/test.sh +3 -1
- package/sidecar/talaria_sidecar/__init__.py +1 -1
- package/sidecar/talaria_sidecar/agent_mutation.py +87 -9
- package/sidecar/talaria_sidecar/agent_services.py +83 -23
- package/sidecar/talaria_sidecar/home.py +12 -5
- package/sidecar/talaria_sidecar/methods/__init__.py +2 -2
- package/sidecar/talaria_sidecar/methods/agent_imports.py +346 -0
- package/sidecar/talaria_sidecar/methods/chat.py +141 -58
- package/sidecar/talaria_sidecar/methods/commands.py +6 -4
- package/sidecar/talaria_sidecar/methods/config.py +8 -3
- package/sidecar/talaria_sidecar/methods/connectors.py +138 -4
- package/sidecar/talaria_sidecar/methods/dashboard_plugins.py +25 -4
- package/sidecar/talaria_sidecar/methods/delegation.py +126 -0
- package/sidecar/talaria_sidecar/methods/gateway.py +5 -0
- package/sidecar/talaria_sidecar/methods/gateway_sessions.py +142 -23
- package/sidecar/talaria_sidecar/methods/groups.py +120 -0
- package/sidecar/talaria_sidecar/methods/kanban.py +48 -0
- package/sidecar/talaria_sidecar/methods/managed_buffers.py +110 -0
- package/sidecar/talaria_sidecar/methods/mcp.py +55 -0
- package/sidecar/talaria_sidecar/methods/memory.py +27 -3
- package/sidecar/talaria_sidecar/methods/nous_account.py +130 -0
- package/sidecar/talaria_sidecar/methods/oauth.py +25 -4
- package/sidecar/talaria_sidecar/methods/outbound_drafts.py +147 -0
- package/sidecar/talaria_sidecar/methods/plugin_catalog.py +73 -2
- package/sidecar/talaria_sidecar/methods/providers.py +51 -1
- package/sidecar/talaria_sidecar/methods/skill_revisions.py +177 -0
- package/sidecar/talaria_sidecar/methods/skills.py +10 -0
- package/sidecar/talaria_sidecar/methods/tts.py +67 -0
- package/sidecar/talaria_sidecar/rpc.py +11 -2
- package/static/dist/FILES.txt +155 -144
- package/static/dist/THIRD_PARTY_LICENSES.md +1 -1
- package/static/dist/assets/AppShell-hvysbd9x.js +8 -0
- package/static/dist/assets/Button-dlsibkzq.js +1 -0
- package/static/dist/assets/ChatPage-jikwrwfd.js +2 -0
- package/static/dist/assets/Composer-mnke8ss2.js +5 -0
- package/static/dist/assets/ConnectTargets-ejplzo4q.js +1 -0
- package/static/dist/assets/Dialog-rksfyyq5.js +1 -0
- package/static/dist/assets/{ExtensionRoute-zrhjn0wm.js → ExtensionRoute-igk5h0rj.js} +1 -1
- package/static/dist/assets/HubRoute-eooassx4.js +2 -0
- package/static/dist/assets/Markdown-m5pzgvtx.js +2 -0
- package/static/dist/assets/{MarkdownRenderer-fbswsgld.js → MarkdownRenderer-74ysuomr.js} +18 -18
- package/static/dist/assets/OAuthSignIn-i4flsuq2.js +1 -0
- package/static/dist/assets/QueueCard-msz9wd1m.js +1 -0
- package/static/dist/assets/ResourceSwitch-b70zg4xd.js +1 -0
- package/static/dist/assets/RightPanel-f5v61m8j.js +1 -0
- package/static/dist/assets/Select-f3l897pt.js +1 -0
- package/static/dist/assets/SessionListPanel-brnzacw9.js +1 -0
- package/static/dist/assets/SettingsLayout-f4akmrt2.js +1 -0
- package/static/dist/assets/States-msohx3c0.js +1 -0
- package/static/dist/assets/TerminalPanel-bnu5xawo.js +16 -0
- package/static/dist/assets/Toaster-d6col3ch.js +1 -0
- package/static/dist/assets/_app-lrjgufcy.js +1 -0
- package/static/dist/assets/{_app.ext._extensionId-na62087t.js → _app.ext._extensionId-k3xitxr1.js} +1 -1
- package/static/dist/assets/_app.groups-bt4wdwnd.js +1 -0
- package/static/dist/assets/{_app.index-jypgdqoi.js → _app.index-n3otiki0.js} +1 -1
- package/static/dist/assets/{_app.insights-kabejdtm.js → _app.insights-b0mzlh6m.js} +1 -1
- package/static/dist/assets/{_app.kanban-m19kfcmx.js → _app.kanban-d923g7j5.js} +1 -1
- package/static/dist/assets/{_app.logs-iw4m96sz.js → _app.logs-donegue1.js} +1 -1
- package/static/dist/assets/{_app.memory-jq5frwcg.js → _app.memory-hdnled08.js} +1 -1
- package/static/dist/assets/{_app.profiles-kwa3m7rp.js → _app.profiles-fumot3jk.js} +1 -1
- package/static/dist/assets/{_app.session._sessionId-o5lyeipj.js → _app.session._sessionId-crmdl2ux.js} +1 -1
- package/static/dist/assets/{_app.settings-ckl8hdll.js → _app.settings-jui8iesz.js} +1 -1
- package/static/dist/assets/_app.settings._section-do84hsqw.js +3 -0
- package/static/dist/assets/{_app.skills-n016rihd.js → _app.skills-heqcn21m.js} +1 -1
- package/static/dist/assets/_app.tasks-jiudtutt.js +1 -0
- package/static/dist/assets/{_app.todos-btew5v2s.js → _app.todos-bl6kk2zq.js} +1 -1
- package/static/dist/assets/{_app.workspaces-lnfk95ch.js → _app.workspaces-frvh3o7w.js} +1 -1
- package/static/dist/assets/_delete-qnxuo87s.js +1 -0
- package/static/dist/assets/{abnfDiagram-VCTEODGH-dttheegb.js → abnfDiagram-VCTEODGH-dppg3yfx.js} +1 -1
- package/static/dist/assets/{architecture-7GRP2DOG-ic435919.js → architecture-7GRP2DOG-gbajejh3.js} +1 -1
- package/static/dist/assets/{architectureDiagram-5GKGNRK7-8r3glgiq.js → architectureDiagram-5GKGNRK7-bzrxyais.js} +1 -1
- package/static/dist/assets/archive-yhdyz231.js +1 -0
- package/static/dist/assets/autoReadClaim-nlyv8tu9.js +1 -0
- package/static/dist/assets/{blockDiagram-I7D4REHJ-jenyos6c.js → blockDiagram-I7D4REHJ-gmk9koab.js} +1 -1
- package/static/dist/assets/{c4Diagram-7LVT6UL2-nzlx7yc4.js → c4Diagram-7LVT6UL2-bfqiqqcz.js} +1 -1
- package/static/dist/assets/channel-grt3rob4.js +1 -0
- package/static/dist/assets/{chunk-4HAMMTFA-g0cru63b.js → chunk-4HAMMTFA-i9s6h4wv.js} +1 -1
- package/static/dist/assets/{chunk-75Z2AOVW-7rkswkjw.js → chunk-75Z2AOVW-gnt6pnso.js} +1 -1
- package/static/dist/assets/{chunk-DU6HZSFF-fn73jzdo.js → chunk-DU6HZSFF-gq439wot.js} +3 -3
- package/static/dist/assets/{chunk-F27PBJKO-oey8e72m.js → chunk-F27PBJKO-wvx90pbt.js} +1 -1
- package/static/dist/assets/{chunk-GMAD6QVW-l2a32wiy.js → chunk-GMAD6QVW-mc2gu30k.js} +1 -1
- package/static/dist/assets/{chunk-GVQU2GXP-o9dwzh8h.js → chunk-GVQU2GXP-f8fxa2ym.js} +1 -1
- package/static/dist/assets/{chunk-IMKFNOWR-eblwj20b.js → chunk-IMKFNOWR-lnsl31hj.js} +1 -1
- package/static/dist/assets/{chunk-L3NEJ4N5-o2mufspb.js → chunk-L3NEJ4N5-kbfdidwu.js} +1 -1
- package/static/dist/assets/{chunk-OSK3NFVY-ijp9pw29.js → chunk-OSK3NFVY-dvxsduj6.js} +1 -1
- package/static/dist/assets/{chunk-P2QGCYS3-hs9hqwl4.js → chunk-P2QGCYS3-ivo3i1wf.js} +1 -1
- package/static/dist/assets/{chunk-POPQ4Y6H-bp9rsqez.js → chunk-POPQ4Y6H-i0gfu0hx.js} +1 -1
- package/static/dist/assets/{chunk-PWAF6VOD-brkprov6.js → chunk-PWAF6VOD-jb0fdyb0.js} +1 -1
- package/static/dist/assets/{chunk-SHT3W25Y-gmpv0pxz.js → chunk-SHT3W25Y-b7ou2xsp.js} +1 -1
- package/static/dist/assets/{chunk-SVP7TREG-oldm08fu.js → chunk-SVP7TREG-e2v7me5v.js} +1 -1
- package/static/dist/assets/{chunk-TICWLB2K-ooqilfv7.js → chunk-TICWLB2K-e5zlai62.js} +1 -1
- package/static/dist/assets/classDiagram-ZZMXUADV-nnsp49jr.js +1 -0
- package/static/dist/assets/classDiagram-v2-VYDZK3BY-nnsp49jr.js +1 -0
- package/static/dist/assets/completionAudio-c5at041z.js +1 -0
- package/static/dist/assets/{copy-jo006coq.js → copy-jj3oiw13.js} +1 -1
- package/static/dist/assets/{cynefin-OW5HDTMX-d47op7qs.js → cynefin-OW5HDTMX-n5n1ck70.js} +1 -1
- package/static/dist/assets/{cynefinDiagram-5FMLGOSQ-doa7594y.js → cynefinDiagram-5FMLGOSQ-b33npu4f.js} +1 -1
- package/static/dist/assets/{dagre-GXQ25YYZ-os768dp4.js → dagre-GXQ25YYZ-miwvae07.js} +1 -1
- package/static/dist/assets/{diagram-S7CK7UJ4-fyi81nxd.js → diagram-S7CK7UJ4-j8fphsp4.js} +1 -1
- package/static/dist/assets/{diagram-UQ7AKVKN-j3exggaq.js → diagram-UQ7AKVKN-5cixo166.js} +1 -1
- package/static/dist/assets/{diagram-VSXAHHWV-omo1en2l.js → diagram-VSXAHHWV-ii3bf92m.js} +1 -1
- package/static/dist/assets/{diagram-VX7I27RA-oro2cyu0.js → diagram-VX7I27RA-b3cfgx81.js} +1 -1
- package/static/dist/assets/{diagram-Z3DM3KII-byt9vdb7.js → diagram-Z3DM3KII-bey9lqr8.js} +1 -1
- package/static/dist/assets/{dist-etpoyscq.js → dist-cb8um5dh.js} +4 -4
- package/static/dist/assets/{dist-crc46di9.js → dist-kpg5ccm9.js} +1 -1
- package/static/dist/assets/{ebnfDiagram-PWID7BFC-ee3haugh.js → ebnfDiagram-PWID7BFC-2m4wrnqc.js} +1 -1
- package/static/dist/assets/{erDiagram-RLTQ6QDP-d1e93yff.js → erDiagram-RLTQ6QDP-kak5te0n.js} +1 -1
- package/static/dist/assets/{eventmodeling-NTZA5JFV-i1ihb40c.js → eventmodeling-NTZA5JFV-ojcc486t.js} +1 -1
- package/static/dist/assets/flowDiagram-HODETNUW-kxr9sicu.js +1 -0
- package/static/dist/assets/folder-plus-fk6j7tlv.js +1 -0
- package/static/dist/assets/{ganttDiagram-EL5Y4UJY-m7g0jud4.js → ganttDiagram-EL5Y4UJY-k6nfmhrh.js} +1 -1
- package/static/dist/assets/getPseudoElementBounds-mwj3vqni.js +1 -0
- package/static/dist/assets/{gitGraph-4MIJSDKK-hzdj07yy.js → gitGraph-4MIJSDKK-bxq1lbhy.js} +1 -1
- package/static/dist/assets/{gitGraphDiagram-WWUBYQGX-dm9agbna.js → gitGraphDiagram-WWUBYQGX-ehvoankt.js} +1 -1
- package/static/dist/assets/group_discussions-fk5hry4l.js +1 -0
- package/static/dist/assets/{highlighted-body-KPVGNVTW-mmgz2czu.js → highlighted-body-KPVGNVTW-nr4nfdq7.js} +1 -1
- package/static/dist/assets/{host-fr6lni1p.js → host-dhgqiozp.js} +1 -1
- package/static/dist/assets/index-hx7z4wdj.js +13 -0
- package/static/dist/assets/index-o8ebuc5x.css +2 -0
- package/static/dist/assets/{info-A6RAGUB7-lll1dqmm.js → info-A6RAGUB7-dtsj0ybw.js} +1 -1
- package/static/dist/assets/{infoDiagram-27XIBGKW-k7esc639.js → infoDiagram-27XIBGKW-jena90ao.js} +1 -1
- package/static/dist/assets/{ishikawaDiagram-5VMMS53U-lgr6k9wo.js → ishikawaDiagram-5VMMS53U-kia6bn5u.js} +1 -1
- package/static/dist/assets/{journeyDiagram-3NMN7TZE-ndmbxuqk.js → journeyDiagram-3NMN7TZE-ipsa6icb.js} +1 -1
- package/static/dist/assets/{kanban-definition-UXKFOSKX-mjxym0jp.js → kanban-definition-UXKFOSKX-moxx59kp.js} +1 -1
- package/static/dist/assets/katex-ic33v820.js +257 -0
- package/static/dist/assets/katex-qcv7xo0t.css +1 -0
- package/static/dist/assets/{lazyRouteComponent-cwb6l7xh.js → lazyRouteComponent-i74ujrfk.js} +1 -1
- package/static/dist/assets/{line-mtr5k6il.js → line-lgrkg9no.js} +1 -1
- package/static/dist/assets/link-2-fp49mwl2.js +1 -0
- package/static/dist/assets/{link-iadw4ghw.js → link-es18mse1.js} +2 -2
- package/static/dist/assets/{locale-cs-n41hptse.js → locale-cs-brltdkcp.js} +1 -1
- package/static/dist/assets/{locale-de-k7ht47ew.js → locale-de-h6e9oq6v.js} +1 -1
- package/static/dist/assets/{locale-es-ih078lco.js → locale-es-oklmh80f.js} +1 -1
- package/static/dist/assets/{locale-fr-ojabnf41.js → locale-fr-b17ozoi2.js} +1 -1
- package/static/dist/assets/{locale-it-kb96jufy.js → locale-it-whe01eef.js} +1 -1
- package/static/dist/assets/{locale-ja-jpsp3xs1.js → locale-ja-g1s0rtpc.js} +1 -1
- package/static/dist/assets/{locale-pl-dbap4leu.js → locale-pl-d9p3lqcb.js} +1 -1
- package/static/dist/assets/{locale-pt-nci7w72x.js → locale-pt-l75on74f.js} +1 -1
- package/static/dist/assets/{locale-ru-soghe4cs.js → locale-ru-wl3mbsaw.js} +1 -1
- package/static/dist/assets/{locale-tr-ks00mu68.js → locale-tr-cz87itrq.js} +1 -1
- package/static/dist/assets/{locale-vi-ij7twfm6.js → locale-vi-elqj1y4k.js} +1 -1
- package/static/dist/assets/{locale-zh-Hant-feakwr7a.js → locale-zh-Hant-hf8gqm7d.js} +1 -1
- package/static/dist/assets/{locale-zh-ren0vjyv.js → locale-zh-cdckwb0u.js} +1 -1
- package/static/dist/assets/login-o6gfl4gy.js +1 -0
- package/static/dist/assets/mermaid-HWGCJPDP-n2kbzsao.js +1 -0
- package/static/dist/assets/{mermaid-parser.core-k91vdnvi.js → mermaid-parser.core-fflovwf2.js} +3 -3
- package/static/dist/assets/{mindmap-definition-YA3MSWOX-ehztfea4.js → mindmap-definition-YA3MSWOX-ic8l9whi.js} +1 -1
- package/static/dist/assets/onboarding-bxm7gdrr.js +1 -0
- package/static/dist/assets/{packet-AYTQ26CC-ok2xrblz.js → packet-AYTQ26CC-ntci3088.js} +1 -1
- package/static/dist/assets/{pegDiagram-XKGWAZYB-ec3rpj0m.js → pegDiagram-XKGWAZYB-e3btz04w.js} +1 -1
- package/static/dist/assets/{pie-WAS4IAKB-iwkir23u.js → pie-WAS4IAKB-o2dc7l36.js} +1 -1
- package/static/dist/assets/{pieDiagram-E7YTZNPT-fcpqpekh.js → pieDiagram-E7YTZNPT-gro55rrw.js} +1 -1
- package/static/dist/assets/presence-lq6m12ga.js +1 -0
- package/static/dist/assets/prompt_queue_cancelled-cebcuagu.js +1 -0
- package/static/dist/assets/{quadrantDiagram-AXDQQJYC-lqsync43.js → quadrantDiagram-AXDQQJYC-fxulmd7d.js} +1 -1
- package/static/dist/assets/queryKeys-cnvn6pea.js +9 -0
- package/static/dist/assets/{radar-RG4KPBEZ-hje4jbk6.js → radar-RG4KPBEZ-9pcospra.js} +1 -1
- package/static/dist/assets/{railroad-74A4TZTK-gll9n6qi.js → railroad-74A4TZTK-nzdga12j.js} +1 -1
- package/static/dist/assets/{railroad-abnf-HS5TGJTU-o6h6lpn4.js → railroad-abnf-HS5TGJTU-ep3ytel0.js} +1 -1
- package/static/dist/assets/{railroad-ebnf-LZEXJU2U-juaefj6o.js → railroad-ebnf-LZEXJU2U-iw7uc1wy.js} +1 -1
- package/static/dist/assets/{railroad-peg-WCYAUIDC-cgfhvpah.js → railroad-peg-WCYAUIDC-fo3b3gme.js} +1 -1
- package/static/dist/assets/{railroadDiagram-O6MQD6OU-lp3w7awf.js → railroadDiagram-O6MQD6OU-lxpxf8f0.js} +1 -1
- package/static/dist/assets/{refresh-cw-iccm7a4e.js → refresh-cw-d14h79x5.js} +1 -1
- package/static/dist/assets/rename-ccd52yws.js +1 -0
- package/static/dist/assets/{requirementDiagram-BXWQKSXE-ha8eibcf.js → requirementDiagram-BXWQKSXE-lrozucd2.js} +1 -1
- package/static/dist/assets/{sankeyDiagram-P5KCCOFB-oxf31pr9.js → sankeyDiagram-P5KCCOFB-iusxy9mq.js} +1 -1
- package/static/dist/assets/{sequenceDiagram-WJ2MYXX4-jiq8lhyo.js → sequenceDiagram-WJ2MYXX4-o987q8ti.js} +1 -1
- package/static/dist/assets/{share._token-o76ki0ly.js → share._token-bfw7f9m5.js} +1 -1
- package/static/dist/assets/sliders-horizontal-l65hoa3x.js +1 -0
- package/static/dist/assets/{stateDiagram-D77RDMKH-f3fslnon.js → stateDiagram-D77RDMKH-hh23v7y5.js} +1 -1
- package/static/dist/assets/stateDiagram-v2-MP3YSRHH-jukr0d8h.js +1 -0
- package/static/dist/assets/{swimlanes-42K2YHIH-k1hmk7jf.js → swimlanes-42K2YHIH-gj2t3rm8.js} +1 -1
- package/static/dist/assets/swimlanesDiagram-VR7AAH4N-ik9m9j2m.js +8 -0
- package/static/dist/assets/{timeline-definition-24CTP7MA-n3ncfy9r.js → timeline-definition-24CTP7MA-84s2w2sr.js} +1 -1
- package/static/dist/assets/toast-gqqcvxiy.js +56 -0
- package/static/dist/assets/{treeView-Q6P3EWNA-l3y2pejt.js → treeView-Q6P3EWNA-cmuj50l7.js} +1 -1
- package/static/dist/assets/{treemap-WGGIJYW6-jown9axh.js → treemap-WGGIJYW6-dpjlg0xc.js} +1 -1
- package/static/dist/assets/tts-jw84jlqy.js +1 -0
- package/static/dist/assets/{useForm-o4uu74mx.js → useForm-lxzhiqao.js} +1 -1
- package/static/dist/assets/{useParams-ftsveu84.js → useParams-dt6gkoq7.js} +1 -1
- package/static/dist/assets/{useSearch-crqueqga.js → useSearch-o8t49csk.js} +1 -1
- package/static/dist/assets/useTranscript-gx9umcc2.js +1 -0
- package/static/dist/assets/{vennDiagram-4TSXK5OY-dh59uq1c.js → vennDiagram-4TSXK5OY-g9g5o8vy.js} +1 -1
- package/static/dist/assets/{wardley-WFR3VGLG-e6d74b0j.js → wardley-WFR3VGLG-ij35obrl.js} +1 -1
- package/static/dist/assets/{wardleyDiagram-VM6X3IG4-hnofh78f.js → wardleyDiagram-VM6X3IG4-f9my7q7w.js} +1 -1
- package/static/dist/assets/{xychartDiagram-S5SC5T6Z-bpymjelb.js → xychartDiagram-S5SC5T6Z-olqx1s1p.js} +1 -1
- package/static/dist/index.html +1 -1
- package/static/dist/sw.js +1 -1
- package/static/dist/assets/AppShell-3isgvoro.js +0 -8
- package/static/dist/assets/Button-f4n6dapf.js +0 -1
- package/static/dist/assets/ChatPage-k7b6xfax.js +0 -4
- package/static/dist/assets/ConnectTargets-juqvt5lm.js +0 -1
- package/static/dist/assets/Dialog-hta5utr3.js +0 -1
- package/static/dist/assets/Field-b6ez48oz.js +0 -1
- package/static/dist/assets/HubRoute-iwvso2tz.js +0 -2
- package/static/dist/assets/Markdown-jdeth7zq.js +0 -2
- package/static/dist/assets/OAuthSignIn-bpd8hom3.js +0 -1
- package/static/dist/assets/ResourceSwitch-odi6dy2o.js +0 -1
- package/static/dist/assets/RightPanel-eu6enlo6.js +0 -1
- package/static/dist/assets/Select-kr07928w.js +0 -1
- package/static/dist/assets/SessionListPanel-etb2i54l.js +0 -1
- package/static/dist/assets/SettingsLayout-eu3xxp23.js +0 -1
- package/static/dist/assets/States-icab19yg.js +0 -1
- package/static/dist/assets/TerminalPanel-hngmsr8b.js +0 -16
- package/static/dist/assets/Toaster-nb2uzjw1.js +0 -1
- package/static/dist/assets/_app-ga1moszl.js +0 -1
- package/static/dist/assets/_app.settings._section-dtdjk98a.js +0 -3
- package/static/dist/assets/_app.tasks-n8zuqsqe.js +0 -1
- package/static/dist/assets/archive-il7c6053.js +0 -1
- package/static/dist/assets/cancel-bsnfo36u.js +0 -1
- package/static/dist/assets/channel-dsbtk01y.js +0 -1
- package/static/dist/assets/classDiagram-ZZMXUADV-fvgcv24g.js +0 -1
- package/static/dist/assets/classDiagram-v2-VYDZK3BY-fvgcv24g.js +0 -1
- package/static/dist/assets/flowDiagram-HODETNUW-jahfpiod.js +0 -1
- package/static/dist/assets/folder-plus-ivoglq98.js +0 -1
- package/static/dist/assets/index-73649w7o.js +0 -10
- package/static/dist/assets/index-lhf1fsdf.css +0 -2
- package/static/dist/assets/katex-cbdd1ohw.css +0 -1
- package/static/dist/assets/katex-pbij2oo6.js +0 -257
- package/static/dist/assets/login-lkhtzfcl.js +0 -1
- package/static/dist/assets/mermaid-HWGCJPDP-jx0q5dm2.js +0 -1
- package/static/dist/assets/onboarding-f67z0a2r.js +0 -1
- package/static/dist/assets/queryKeys-ed4n2egc.js +0 -9
- package/static/dist/assets/refresh-i9ya9dvl.js +0 -1
- package/static/dist/assets/sliders-horizontal-ddcs88av.js +0 -1
- package/static/dist/assets/stateDiagram-v2-MP3YSRHH-hlt6yphw.js +0 -1
- package/static/dist/assets/swimlanesDiagram-VR7AAH4N-hd5t9tnt.js +0 -8
- package/static/dist/assets/toast-liparz2j.js +0 -56
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ConfigUnavailable } from '../config/agent-config.js';
|
|
1
2
|
import { pyOsError, str } from '../util.js';
|
|
2
3
|
/**
|
|
3
4
|
* Workspace registry and trust boundary (Python `api/workspace.py`): per-profile
|
|
@@ -285,20 +286,37 @@ export class WorkspaceRegistry {
|
|
|
285
286
|
}
|
|
286
287
|
return result;
|
|
287
288
|
}
|
|
288
|
-
|
|
289
|
-
|
|
289
|
+
configResolved(profile) {
|
|
290
|
+
try {
|
|
291
|
+
return this.deps.profileConfig(profile) !== null;
|
|
292
|
+
}
|
|
293
|
+
catch {
|
|
294
|
+
return false;
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
requireResolvedConfig(profile) {
|
|
298
|
+
if (!this.configResolved(profile))
|
|
299
|
+
throw new ConfigUnavailable('config.yaml is unavailable; retry');
|
|
300
|
+
}
|
|
301
|
+
async load(profile = null, options = {}) {
|
|
302
|
+
if (options.forWrite)
|
|
303
|
+
this.requireResolvedConfig(profile);
|
|
304
|
+
return (await this.read(profile, false, options.forWrite ?? false));
|
|
290
305
|
}
|
|
291
306
|
/** TAL-303: the registry as named for display: never rewritten on read, and complete before a profile's config is cached. */
|
|
292
307
|
async entries(profile = null) {
|
|
293
308
|
return (await this.read(profile, true));
|
|
294
309
|
}
|
|
295
|
-
async read(profile, forNames) {
|
|
310
|
+
async read(profile, forNames, forWrite = false) {
|
|
296
311
|
try {
|
|
297
312
|
const key = `${this.profileKey(profile)}.registry`;
|
|
298
313
|
const record = await this.deps.documents.get('workspaces', key);
|
|
314
|
+
if (forWrite)
|
|
315
|
+
this.requireResolvedConfig(profile);
|
|
299
316
|
if (record) {
|
|
317
|
+
const resolved = this.configResolved(profile);
|
|
300
318
|
const cleaned = this.cleanWorkspaceList(record.value, profile, forNames);
|
|
301
|
-
if (!forNames && Array.isArray(record.value) && cleaned.length !== record.value.length) {
|
|
319
|
+
if (!forNames && resolved && this.configResolved(profile) && Array.isArray(record.value) && cleaned.length !== record.value.length) {
|
|
302
320
|
try {
|
|
303
321
|
await this.deps.documents.put('workspaces', key, cleaned, record.revision);
|
|
304
322
|
}
|
|
@@ -307,12 +325,20 @@ export class WorkspaceRegistry {
|
|
|
307
325
|
return cleaned.length ? cleaned : [{ path: this.profileConfigDefaultWorkspace(profile), name: 'Home' }];
|
|
308
326
|
}
|
|
309
327
|
}
|
|
310
|
-
catch {
|
|
328
|
+
catch (error) {
|
|
329
|
+
if (forWrite && error instanceof ConfigUnavailable)
|
|
330
|
+
throw error;
|
|
331
|
+
// Malformed or unavailable registry falls back to the profile default.
|
|
332
|
+
}
|
|
311
333
|
return [{ path: this.profileConfigDefaultWorkspace(profile), name: 'Home' }];
|
|
312
334
|
}
|
|
313
335
|
async save(workspaces, profile = null) {
|
|
336
|
+
this.requireResolvedConfig(profile);
|
|
314
337
|
const key = `${this.profileKey(profile)}.registry`;
|
|
315
|
-
await updateDocument(this.deps.documents, 'workspaces', key, () =>
|
|
338
|
+
await updateDocument(this.deps.documents, 'workspaces', key, () => {
|
|
339
|
+
this.requireResolvedConfig(profile);
|
|
340
|
+
return { value: workspaces, result: undefined };
|
|
341
|
+
}, { replaceInvalid: true });
|
|
316
342
|
}
|
|
317
343
|
validLastWorkspace(raw, profile, remoteCwd) {
|
|
318
344
|
if (!raw)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaces.js","sourceRoot":"","sources":["../../src/workspace/workspaces.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspaces.js","sourceRoot":"","sources":["../../src/workspace/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAC3C;;;;;GAKG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAExE,MAAM,CAAC,MAAM,eAAe,GAAG,4BAA4B,CAAA;AAC3D,MAAM,CAAC,MAAM,iCAAiC,GAAG,8BAA8B,CAAA;AAC/E,MAAM,CAAC,MAAM,oCAAoC,GAAG,2EAA2E,CAAA;AAqB/H,MAAM,UAAU,uBAAuB,CAAC,QAA2C;IACjF,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3D,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC7D,OAAO,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,OAAO,CAAA;AAC9C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IACrB,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;IACtE,IAAI,KAAK,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACtE,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,sBAAsB,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAAA;AAClG,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;AAEzJ,SAAS,cAAc,CAAC,IAA+B;IACrD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IACpC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACrC,OAAO,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAA;AACxD,CAAC;AACD,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY;IAC7C,OAAO,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,KAAK,MAAM,CAAC,IAAI,WAAW;QAAE,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtH,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,2BAA2B,CAAC,GAA8B;IACjE,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;IACrC,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACpC,IAAI,SAAS,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAClC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1E,OAAO,CAAC,GAAG,WAAW,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;AAChG,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACvE,OAAO,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,sBAAsB,CAAC,SAAiB,EAAE,OAAuB;IAC/E,IAAI,GAAG,GAAkB,IAAI,CAAA;IAC7B,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;QAC1C,GAAG,GAAG,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IAClD,CAAC;IACD,IAAI,2BAA2B,CAAC,OAAO,IAAI,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IAClE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACpG,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,YAAY,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IACvF,KAAK,MAAM,GAAG,IAAI,iBAAiB;QAAE,IAAI,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;IACvH,IAAI,GAAG,KAAK,IAAI;QAAE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE;YAAE,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAA;IAC/F,MAAM,iBAAiB,GAAG,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAA;IACtE,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,EAAE,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;IACzF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;YAC/B,IAAI,SAAS,KAAK,OAAO;gBAAE,OAAO,IAAI,CAAA;YACtC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBAAE,SAAQ;YACnE,IAAI,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAA;YAC7C,SAAQ;QACV,CAAC;QACD,IAAI,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;IAC/C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,iIAAiI;AACjI,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,OAAkC;IACnF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;AAC7E,CAAC;AAED,MAAM,OAAO,iBAAiB;IAEP;IADZ,IAAI,CAAQ;IACrB,YAAqB,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAA;IACpC,CAAC;IAEO,gBAAgB,CAAC,OAAsB;QAC7C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;QACtG,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAC1B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC/F,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1D,CAAC;IAEO,UAAU,CAAC,OAAsB;QACvC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAA;YAClD,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACjG,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAA;QACtC,OAAO,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IACtD,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,OAAsB;QAC3C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAA;YACtG,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC3H,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAA;QAAC,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,UAAyB,IAAI;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACnE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAA;QAClC,OAAO,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC;IAED,iBAAiB,CAAC,OAAsB;QACtC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAC5C,MAAM,QAAQ,GAAG,GAAG,EAAE,QAAQ,CAAA;YAC9B,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC;gBAAE,OAAO,IAAI,CAAA;YACnD,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YACxC,OAAO,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,0FAA0F;IAC1F,gCAAgC,CAAC,IAAY,EAAE,UAAyB,IAAI;QAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC3C,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,MAAM,GAAG,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC/C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACjE,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YACrD,IAAI,sBAAsB,CAAC,aAAa,EAAE,aAAa,CAAC,IAAI,sBAAsB,CAAC,aAAa,EAAE,aAAa,CAAC;gBAAE,OAAO,IAAI,CAAA;YAC7H,OAAO,WAAW,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAA;QACzE,CAAC;QACD,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACvD,MAAM,IAAI,GAAG,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;QAC5F,OAAO,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA;IACrD,CAAC;IAED,sBAAsB,CAAC,UAAyB,IAAI;QAClD,IAAI,CAAC;YACH,oGAAoG;YACpG,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAC5C,oHAAoH;YACpH,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAA;YAC9B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAA;YACnC,IAAI,OAAO,QAAQ,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAA;YAC9C,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CAAC,UAAyB,IAAI;QACzD,IAAI,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACpF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAA;QACvB,CAAC;QACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAED,+JAA+J;IAC/J,6BAA6B,CAAC,UAAyB,IAAI;QACzD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAC5C,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAA;gBACnC,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAA;gBAChD,KAAK,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAU,EAAE,CAAC;oBAC9D,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;oBACnB,IAAI,EAAE,EAAE,CAAC;wBACP,IAAI,MAAM;4BAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAA;wBAC5B,MAAM,CAAC,GAAG,qBAAqB,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;wBAC9C,IAAI,KAAK,CAAC,CAAC,CAAC;4BAAE,OAAO,CAAC,CAAA;oBACxB,CAAC;gBACH,CAAC;gBACD,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;gBACjC,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;oBACvB,IAAI,MAAM;wBAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;oBAC7B,MAAM,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;oBAC/C,IAAI,KAAK,CAAC,CAAC,CAAC;wBAAE,OAAO,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;QACD,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC;IAED,+GAA+G;IACvG,kBAAkB,CAAC,UAAmB,EAAE,OAAsB,EAAE,QAAQ,GAAG,KAAK;QACtF,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAA;QAC7F,MAAM,MAAM,GAAqB,EAAE,CAAA;QACnC,gHAAgH;QAChH,MAAM,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAA;QAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YAAE,OAAO,MAAM,CAAA;QAC7C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,SAAQ;YACzC,MAAM,KAAK,GAAG,CAA4B,CAAA;YAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC5B,IAAI,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC1B,IAAI,CAAC,IAAI;gBAAE,SAAQ;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACnE,IAAI,CAAS,CAAA;YACb,IAAI,MAAM,KAAK,IAAI;gBAAE,CAAC,GAAG,MAAM,CAAA;iBAC1B,CAAC;gBACJ,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBACtB,CAAC,GAAG,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5C,CAAC;YACD,IAAI,QAAQ,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;oBAChH,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC;wBAAE,SAAQ;gBACxD,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAQ;gBACV,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAAE,IAAI,GAAG,MAAM,CAAA;YACnD,sFAAsF;YACtF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACzC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QAChC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,cAAc,CAAC,OAAsB;QAC3C,IAAI,CAAC;YAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;IACjF,CAAC;IAEO,qBAAqB,CAAC,OAAsB;QAClD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,CAAC,CAAA;IACrG,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAyB,IAAI,EAAE,UAAkC,EAAE;QAC5E,IAAI,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;QACzD,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,6HAA6H;IAC7H,KAAK,CAAC,OAAO,CAAC,UAAyB,IAAI;QACzC,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,OAAsB,EAAE,QAAiB,EAAE,QAAQ,GAAG,KAAK;QAC5E,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAA;YAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAAA;YAC/D,IAAI,QAAQ;gBAAE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACjD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;gBACxE,IAAI,CAAC,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACnI,IAAI,CAAC;wBAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,2CAA2C,CAAC,CAAC;gBAC1I,CAAC;gBACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YACzG,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,QAAQ,IAAI,KAAK,YAAY,iBAAiB;gBAAE,MAAM,KAAK,CAAA;YAC/D,uEAAuE;QACzE,CAAC;QACD,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAA4B,EAAE,UAAyB,IAAI;QACpE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;QACnC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAA;QAClD,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE;YAChE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACnC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QACjD,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9B,CAAC;IAEO,kBAAkB,CAAC,GAAW,EAAE,OAAsB,EAAE,SAAwB;QACtF,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,IAAI,SAAS;YAAE,OAAO,IAAI,CAAC,gCAAgC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/F,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;IAChC,CAAC;IAED,8FAA8F;IAC9F,KAAK,CAAC,8BAA8B,CAAC,UAAyB,IAAI;QAChE,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAA;IACpF,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAyB,IAAI;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QACrB,IAAI,aAAa,GAAG,KAAK,CAAA;QACzB,IAAI,OAAO,KAAK,IAAI;YAAE,aAAa,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;aACpF,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,SAAS;YAAE,aAAa,GAAG,IAAI,CAAA;aACtD,CAAC;YAAC,IAAI,CAAC;gBAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;QAAC,CAAC;QAC5H,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE,KAAK,CAAA;gBAClF,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACjI,IAAI,MAAM;oBAAE,OAAO,MAAM,CAAA;YAC3B,CAAC;YAAC,MAAM,CAAC,CAAC,wCAAwC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,UAAyB,IAAI;QAChE,IAAI,CAAC;YAAC,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACpL,CAAC;IAED,wCAAwC;IACxC,WAAW,CAAC,SAAiB,EAAE,YAAY,GAAG,qBAAqB;QACjE,IAAI,EAAE,CAAA;QACN,IAAI,CAAC;YACH,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAA;YAClD,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,GAAG,YAAY,KAAK,SAAS,EAAE,CAAA;YAC7D,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1C,OAAO,uBAAuB,SAAS,0DAA0D,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,gIAAgI,CAAA;YAC9P,CAAC;YACD,OAAO,uBAAuB,SAAS,qDAAqD,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAA;QAC7H,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE;YAAE,OAAO,4BAA4B,SAAS,EAAE,CAAA;QACrE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAyB,IAAI;QAC9C,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,MAAM,GAAG,GAAG,CAAC,SAAoC,EAAE,EAAE;YACnD,IAAI,CAAC,SAAS;gBAAE,OAAM;YACtB,IAAI,CAAS,CAAA;YACb,IAAI,CAAC;gBAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAM;YAAC,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAE,OAAM;YACrB,IAAI,sBAAsB,CAAC,CAAC,EAAE,SAAS,CAAC;gBAAE,OAAM;YAChD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAA;QACD,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACpB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAA;QACjC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACvD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;QACzC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,UAAyB,IAAI;QAClE,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,CAAA;QACpD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;QAChD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;QACzB,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACtC,IAAI,MAAc,CAAA;QAClB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aACvD,IAAI,UAAU,CAAC,GAAG,CAAC;YAAE,MAAM,GAAG,GAAG,CAAA;;YACjC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAA;QAC3C,IAAI,WAAmB,CAAA;QACvB,IAAI,CAAC;YAAC,WAAW,GAAG,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,WAAW,GAAG,MAAM,CAAA;QAAC,CAAC;QAC7F,MAAM,eAAe,GAAG,WAAW,CAAC,WAAW,EAAE,CAAA;QACjD,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACvD,MAAM,WAAW,GAAa,EAAE,CAAA;QAChC,MAAM,MAAM,GAAG,CAAC,CAAS,EAAU,EAAE;YACnC,IAAI,aAAa,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACvC,MAAM,IAAI,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAA;gBACrC,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO,GAAG,CAAA;gBACjC,IAAI,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;oBAAE,OAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAClG,CAAC;YACD,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;QACD,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAA;QACrG,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACvF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,KAAK,IAAI,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAA;QACjG,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACtD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrE,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACvC,IAAI,cAAsB,CAAA;QAC1B,IAAI,CAAC;YAAC,cAAc,GAAG,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAAC,CAAC;QAC9G,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;YAAE,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACnG,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACpC,IAAI,QAAkB,CAAA;QACtB,IAAI,CAAC;YAAC,QAAQ,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAAC,CAAC;QAC1J,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;YAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,SAAQ;YAC1B,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU;gBAAE,SAAQ;YAClD,IAAI,SAAS,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,SAAQ;YACrE,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAA;YAChC,IAAI,WAAW,CAAC,MAAM,IAAI,KAAK;gBAAE,MAAK;QACxC,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,uFAAuF;IACvF,KAAK,CAAC,cAAc,CAAC,IAA+B,EAAE,UAAyB,IAAI;QACjF,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;gBAC1G,IAAI,MAAM,KAAK,IAAI;oBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;gBACnF,OAAO,MAAM,CAAA;YACf,CAAC;YACD,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACnE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;QAC7E,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC5B,IAAI,IAAI,KAAK,GAAG,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;YAAE,OAAO,SAAS,CAAA;QAC/D,IAAI,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,SAAS,EAAE,CAAC,CAAA;QAC/G,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;YAC/F,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAA;QAC5C,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACxB,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAClF,IAAI,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;YAAE,OAAO,SAAS,CAAA;QACtD,MAAM,IAAI,KAAK,CAAC,kHAAkH,SAAS,2CAA2C,CAAC,CAAA;IACzL,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACtC,MAAM,GAAG,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC/C,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;QACtC,MAAM,SAAS,GAAG,UAAU,IAAI,GAAG,CAAA;QACnC,IAAI,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,SAAS,EAAE,CAAC,CAAA;IAChH,CAAC;IAED,+GAA+G;IAC/G,KAAK,CAAC,2BAA2B,CAAC,SAAoC,EAAE,QAA8D,EAAE,UAAyB,IAAI;QACnK,IAAI,CAAC;YACH,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACjE,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS;gBAAE,MAAM,QAAQ,CAAA;YAC9B,IAAI,QAA2C,CAAA;YAC/C,IAAI,CAAC;gBACH,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;YACvD,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,QAAQ,CAAA;YAChB,CAAC;YACD,IAAI,uBAAuB,CAAC,QAAQ,CAAC;gBAAE,MAAM,QAAQ,CAAA;YACrD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;YAClD,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;gBACtI,MAAM,QAAQ,CAAA;YAChB,CAAC;YACD,MAAM,QAAQ,CAAA;QAChB,CAAC;IACH,CAAC;IAED,gHAAgH;IAChH,aAAa,CAAC,IAAY,EAAE,UAAyB,IAAI;QACvD,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,gCAAgC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACtE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAA;YACjC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;QAC7E,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC5B,IAAI,IAAI,KAAK,GAAG,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;YAAE,OAAO,SAAS,CAAA;QAC/D,IAAI,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,SAAS,EAAE,CAAC,CAAA;QAClH,OAAO,SAAS,CAAA;IAClB,CAAC;CACF;AAED,MAAM,UAAU,KAAK,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC;QACH,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAClE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maudecode/talaria-web",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.22.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Talaria Web server: Node 24 HTTP server for the Hermes Agent browser workbench, with the talaria-web launcher, daemon control, self-update, and MCP bins.",
|
|
6
6
|
"bin": {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"postpack": "node scripts/prepack.mjs --clean"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@maudecode/talaria-web-contracts": "1.
|
|
28
|
+
"@maudecode/talaria-web-contracts": "1.22.0",
|
|
29
29
|
"@modelcontextprotocol/sdk": "1.32.0",
|
|
30
30
|
"@orpc/contract": "1.15.2",
|
|
31
31
|
"@orpc/openapi": "1.15.2",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"x-talaria": {
|
|
3
|
-
"releaseTag": "v0.22.
|
|
4
|
-
"version": "0.22.
|
|
5
|
-
"sourceRevision": "
|
|
3
|
+
"releaseTag": "v0.22.5",
|
|
4
|
+
"version": "0.22.5",
|
|
5
|
+
"sourceRevision": "bf0203a794a07aac3ff764972ab9087baa4e4f4e"
|
|
6
6
|
},
|
|
7
7
|
"services": {
|
|
8
8
|
"hermes-agent": {
|
|
9
|
-
"image": "docker.io/nousresearch/hermes-agent@sha256:
|
|
9
|
+
"image": "docker.io/nousresearch/hermes-agent@sha256:9c5561579f3ffdf333401797094ac3a743738d6c25d40f4331c7bf77b694238d"
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"revision": "b5932f1b03ccd0f7738cb4975318df990408f3a3",
|
|
3
|
+
"files": {
|
|
4
|
+
"importer.py": "38fff0aa19fb91d33566ff8113c546d2a10b2b6c38e98340d4f0ea81177d67b3",
|
|
5
|
+
"sync.py": "0b2bf82a6c90406fbf2cd1cac66db95ab523bd9fd2d102ea8f0272d0efd65c19",
|
|
6
|
+
"plugin.yaml": "7057c999f5a4ac2b91c3277866f9a84e2ef8e4f63efe269bed787c4962ef632f"
|
|
7
|
+
}
|
|
8
|
+
}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"nativeContracts": {
|
|
4
|
-
"served-local-policy-v1": [
|
|
4
|
+
"served-local-policy-v1": [
|
|
5
|
+
"4d04303818b61bf3aa09278af48356315515965b",
|
|
6
|
+
"bf0203a794a07aac3ff764972ab9087baa4e4f4e"
|
|
7
|
+
],
|
|
8
|
+
"captured-command-v1": [
|
|
9
|
+
"5b147ab036d6d19131bff8d20701b5001eab844a",
|
|
10
|
+
"4d04303818b61bf3aa09278af48356315515965b",
|
|
11
|
+
"bf0203a794a07aac3ff764972ab9087baa4e4f4e"
|
|
12
|
+
],
|
|
13
|
+
"message-reactions-v1": [
|
|
14
|
+
"4d04303818b61bf3aa09278af48356315515965b",
|
|
15
|
+
"bf0203a794a07aac3ff764972ab9087baa4e4f4e"
|
|
16
|
+
]
|
|
5
17
|
},
|
|
6
18
|
"releases": [
|
|
7
|
-
{
|
|
8
|
-
"releaseTag": "v0.22.2",
|
|
9
|
-
"version": "0.22.2",
|
|
10
|
-
"sourceRevision": "d923a5eb487a17c0a68801bba9ef0f56c81040a8",
|
|
11
|
-
"image": "docker.io/nousresearch/hermes-agent@sha256:36099926da316742423544e055d4734777105ffe6341873af5459b957d0c2919",
|
|
12
|
-
"validatedBy": "TAL-1061"
|
|
13
|
-
},
|
|
14
19
|
{
|
|
15
20
|
"releaseTag": "v0.22.3",
|
|
16
21
|
"version": "0.22.3",
|
|
@@ -24,6 +29,13 @@
|
|
|
24
29
|
"sourceRevision": "4d04303818b61bf3aa09278af48356315515965b",
|
|
25
30
|
"image": "docker.io/nousresearch/hermes-agent@sha256:7a69201726bc64db2072a1371557137c23312d29705cda2b8ea2a0214a50a4cf",
|
|
26
31
|
"validatedBy": "TAL-1307"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"releaseTag": "v0.22.5",
|
|
35
|
+
"version": "0.22.5",
|
|
36
|
+
"sourceRevision": "bf0203a794a07aac3ff764972ab9087baa4e4f4e",
|
|
37
|
+
"image": "docker.io/nousresearch/hermes-agent@sha256:9c5561579f3ffdf333401797094ac3a743738d6c25d40f4331c7bf77b694238d",
|
|
38
|
+
"validatedBy": "TAL-1511"
|
|
27
39
|
}
|
|
28
40
|
]
|
|
29
41
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"""Provision reviewed native API bytes outside tests, into the checker's disposable directory."""
|
|
2
|
+
import hashlib
|
|
3
|
+
import json
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
from urllib.request import urlopen
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def provision(target):
|
|
9
|
+
reviewed = json.loads((Path(__file__).parents[1] / 'agent_importer.json').read_text())
|
|
10
|
+
pin = reviewed['revision']
|
|
11
|
+
target = Path(target)
|
|
12
|
+
target.mkdir()
|
|
13
|
+
for name, expected in reviewed['files'].items():
|
|
14
|
+
with urlopen(f'https://raw.githubusercontent.com/NousResearch/hermes-official-plugins/{pin}/agent-importers/{name}', timeout=30) as response:
|
|
15
|
+
body = response.read(256 * 1024)
|
|
16
|
+
if hashlib.sha256(body).hexdigest() != expected:
|
|
17
|
+
raise ValueError('Reviewed importer contract source changed')
|
|
18
|
+
(target / name).write_bytes(body)
|
|
19
|
+
return target
|
package/sidecar/scripts/test.sh
CHANGED
|
@@ -12,7 +12,8 @@ fi
|
|
|
12
12
|
venv="$here/.venv"
|
|
13
13
|
if [[ ! -x "$venv/bin/python" ]]; then
|
|
14
14
|
"$runner" -m venv "$venv"
|
|
15
|
-
|
|
15
|
+
# pytest 9.2 renames parametrized case ids, which the reviewed inventory in tests/process_inventory.json lists.
|
|
16
|
+
"$venv/bin/python" -m pip install --quiet --disable-pip-version-check "pytest>=8,<9.2"
|
|
16
17
|
fi
|
|
17
18
|
state="${TMPDIR:-/tmp}/talaria-sidecar-tests.$$"
|
|
18
19
|
mkdir -p "$state"
|
|
@@ -20,6 +21,7 @@ trap 'rm -rf -- "$state"' EXIT
|
|
|
20
21
|
cd "$here"
|
|
21
22
|
# GitHub's relocated Linux Python needs LD_LIBRARY_PATH; nothing else from the caller's environment leaks in.
|
|
22
23
|
env -i PATH="$PATH" HOME="$state" TMPDIR="$state" ${LD_LIBRARY_PATH:+LD_LIBRARY_PATH="$LD_LIBRARY_PATH"} \
|
|
24
|
+
HERMES_WEBUI_IMPORTER_DIR="${HERMES_WEBUI_IMPORTER_DIR:-}" \
|
|
23
25
|
HERMES_WEBUI_AGENT_DIR="${HERMES_WEBUI_AGENT_DIR:-}" \
|
|
24
26
|
HERMES_WEBUI_PYTHON="${HERMES_WEBUI_PYTHON:-}" \
|
|
25
27
|
${TALARIA_SIDECAR_WORKERS+TALARIA_SIDECAR_WORKERS="$TALARIA_SIDECAR_WORKERS"} \
|
|
@@ -201,6 +201,15 @@ def recovery_receipts(runtime, *, watch=False, discovery_cache=None):
|
|
|
201
201
|
for path in sorted(set(candidates)):
|
|
202
202
|
try:
|
|
203
203
|
stat = path.lstat()
|
|
204
|
+
if path == services.recovery_path(root, home):
|
|
205
|
+
# Completed correlation is history, not admission debt. Malformed evidence fails closed.
|
|
206
|
+
try:
|
|
207
|
+
state = services.ServiceRecovery(root, home, None, None, None).state
|
|
208
|
+
except RuntimeError:
|
|
209
|
+
state = {}
|
|
210
|
+
if (state.get('update_operation', {}).get('recovered_revision') and not state.get('transaction')
|
|
211
|
+
and not state['entries'] and not state.get('sync_failed')):
|
|
212
|
+
continue
|
|
204
213
|
result.append((str(path), stat.st_ino, stat.st_mtime_ns, stat.st_size))
|
|
205
214
|
except FileNotFoundError:
|
|
206
215
|
pass
|
|
@@ -244,6 +253,19 @@ def recover_retained(runtime, ctx, *, probe=False, complete_revision=None):
|
|
|
244
253
|
receipts, _ = recovery_receipts(runtime, watch=True)
|
|
245
254
|
fingerprint = hashlib.sha256(json.dumps(receipts).encode()).hexdigest() if receipts else ''
|
|
246
255
|
result = {'ok': not receipts, 'owed': bool(receipts), 'fingerprint': fingerprint, 'detail': ''}
|
|
256
|
+
def correlated():
|
|
257
|
+
if runtime.agent_dir is None:
|
|
258
|
+
return {}
|
|
259
|
+
try:
|
|
260
|
+
state = services.ServiceRecovery(runtime.agent_dir.resolve(), runtime.hermes_home, None, None, None).state
|
|
261
|
+
except RuntimeError:
|
|
262
|
+
return {} # Discovery retains malformed debt; the leased worker reports its refusal.
|
|
263
|
+
operation = state.get('update_operation')
|
|
264
|
+
if operation and ((state.get('transaction') or {}).get('operation_id') == operation['operation_id'] or (not recovery_receipts(runtime)[0] and operation.get('recovered_revision'))):
|
|
265
|
+
return {'operation': operation, **({'revision': operation['recovered_revision']} if operation.get('recovered_revision') else {})}
|
|
266
|
+
return {}
|
|
267
|
+
association = correlated()
|
|
268
|
+
result.update(association)
|
|
247
269
|
if complete_revision is not None:
|
|
248
270
|
if not isinstance(complete_revision, str) or not re.fullmatch(r'[a-f0-9]{40}', complete_revision):
|
|
249
271
|
raise InvalidParams('A verified loaded revision is required to complete recovery.')
|
|
@@ -291,7 +313,7 @@ def recover_retained(runtime, ctx, *, probe=False, complete_revision=None):
|
|
|
291
313
|
child.kill()
|
|
292
314
|
child.wait()
|
|
293
315
|
remaining, _ = recovery_receipts(runtime, watch=True)
|
|
294
|
-
return {**result, **reply, 'owed': bool(remaining),
|
|
316
|
+
return {**result, **reply, **(correlated() if association else {}), 'owed': bool(remaining),
|
|
295
317
|
'fingerprint': hashlib.sha256(json.dumps(remaining).encode()).hexdigest() if remaining else ''}
|
|
296
318
|
finally:
|
|
297
319
|
_ACTION_LOCK.release()
|
|
@@ -356,6 +378,11 @@ def call(runtime, ctx, params):
|
|
|
356
378
|
raise InvalidParams("resolved profile homes are required")
|
|
357
379
|
if any(Path(home).resolve().is_relative_to(root.resolve()) for home in homes):
|
|
358
380
|
raise InvalidParams("Agent profile homes must stay outside the source checkout to survive update cleanup")
|
|
381
|
+
operation_id = params.get('operation_id')
|
|
382
|
+
baseline = params.get('baseline_revision')
|
|
383
|
+
if operation_id is not None and (not isinstance(operation_id, str) or not re.fullmatch(r'[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}', operation_id)
|
|
384
|
+
or not isinstance(baseline, str) or not re.fullmatch(r'[a-f0-9]{40}', baseline)):
|
|
385
|
+
raise InvalidParams('An operation requires its immutable baseline revision.')
|
|
359
386
|
intent = params.get('intent', '')
|
|
360
387
|
refresh_token = params.get('refresh_token')
|
|
361
388
|
if not isinstance(intent, str) or len(intent) > 1024:
|
|
@@ -384,7 +411,7 @@ def call(runtime, ctx, params):
|
|
|
384
411
|
stderr.close()
|
|
385
412
|
return {"ok": False, "skipped": False, "detail": "A gateway lifecycle action is still running."}
|
|
386
413
|
try:
|
|
387
|
-
proc = subprocess.Popen([sys.executable, "-m", "talaria_sidecar.agent_mutation", str(root), revision, json.dumps(homes), binding or ""],
|
|
414
|
+
proc = subprocess.Popen([sys.executable, "-m", "talaria_sidecar.agent_mutation", str(root), revision, json.dumps(homes), binding or "", json.dumps({"operation_id": operation_id, "baseline_revision": baseline}) if operation_id else ""],
|
|
388
415
|
cwd=root, env=env, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=stderr, text=True)
|
|
389
416
|
except BaseException:
|
|
390
417
|
stderr.close()
|
|
@@ -435,6 +462,10 @@ def call(runtime, ctx, params):
|
|
|
435
462
|
_CONSENTS[nonce] = {key: session[key] for key in ('root', 'revision', 'homes', 'intent')}
|
|
436
463
|
_CONSENTS[nonce].update(binding=confirmation['binding'], expires=time.monotonic() + CONSENT_SECONDS)
|
|
437
464
|
result['refresh_confirmation'] = {'token': nonce, 'services': confirmation['services']}
|
|
465
|
+
if action == 'begin' and not result['ok'] and 'refresh_confirmation' not in result:
|
|
466
|
+
probe = recover_retained(runtime, ctx, probe=True)
|
|
467
|
+
correlation = probe.get('operation')
|
|
468
|
+
result['recovery_required'] = bool(correlation and correlation['operation_id'] == params.get('operation_id')) if params.get('operation_id') else probe['owed']
|
|
438
469
|
if action == "begin" and result["ok"]:
|
|
439
470
|
runtime.retire()
|
|
440
471
|
return {**result, "token": token}
|
|
@@ -528,7 +559,7 @@ def _writer_ledger(root, identity):
|
|
|
528
559
|
return found
|
|
529
560
|
|
|
530
561
|
|
|
531
|
-
def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None):
|
|
562
|
+
def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None, operation=None):
|
|
532
563
|
if os.name not in {"posix", "nt"}:
|
|
533
564
|
raise RuntimeError("A cooperative Agent writer lease is unavailable on this platform; source was not changed.")
|
|
534
565
|
sys.path.insert(0, str(root))
|
|
@@ -557,6 +588,13 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
557
588
|
if not found["ok"]:
|
|
558
589
|
raise RuntimeError("The installed Agent revision could not be verified before quiescence.")
|
|
559
590
|
initial = found["detail"]
|
|
591
|
+
if operation and operation['baseline_revision'] != initial:
|
|
592
|
+
raise RuntimeError('The Agent baseline changed before the operation acquired its native lease.')
|
|
593
|
+
previous = recovery.state.get('update_operation')
|
|
594
|
+
if operation and previous and recovery.state.get('transaction') and previous['operation_id'] != operation['operation_id']:
|
|
595
|
+
raise RuntimeError('The previous update operation still owns native recovery.')
|
|
596
|
+
if operation and previous and previous['operation_id'] == operation['operation_id'] and (previous['target_revision'] != revision or previous['baseline_revision'] != operation['baseline_revision']):
|
|
597
|
+
raise RuntimeError('The immutable target or baseline changed within the same update operation.')
|
|
560
598
|
initial_tree = records.tree_state(root)
|
|
561
599
|
if initial_tree is None or initial_tree.get("pre_sha") != initial or initial_tree.get("dirty_at_pause") is None:
|
|
562
600
|
raise RuntimeError("The Agent source baseline could not be proved before quiescence.")
|
|
@@ -641,7 +679,10 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
641
679
|
unmapped_pids=[e["pid"] for e in gateway_entries if not e.get("kind")],
|
|
642
680
|
identities=owner_identities, resume_needed=bool(gateway_entries))
|
|
643
681
|
records.record_pause(token, adopted, claims)
|
|
644
|
-
recovery.state.setdefault('transaction', {'revision': revision, 'homes': sorted(map(str, homes))})
|
|
682
|
+
transaction = recovery.state.setdefault('transaction', {'revision': revision, 'homes': sorted(map(str, homes))})
|
|
683
|
+
if operation:
|
|
684
|
+
recovery.state['update_operation'] = {**operation, 'target_revision': revision, 'stage': 'install', 'source_moved': False}
|
|
685
|
+
transaction['operation_id'] = operation['operation_id']
|
|
645
686
|
recovery.save(token)
|
|
646
687
|
if legacy:
|
|
647
688
|
whole, why = records.tree_is_whole(token, root)
|
|
@@ -671,7 +712,7 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
671
712
|
if stopped.is_set() or time.monotonic() >= gateway_deadline:
|
|
672
713
|
raise RuntimeError('Gateway drain has not completed; its durable resume obligation is retained.')
|
|
673
714
|
if entry.get('processes'):
|
|
674
|
-
|
|
715
|
+
recovery.verify_processes(entry)
|
|
675
716
|
recovery.gateway_requested(entry)
|
|
676
717
|
for pid in {entry['pid'], entry.get('service_pid', entry['pid'])}:
|
|
677
718
|
records.mark_stop_sent(token, pid)
|
|
@@ -753,6 +794,8 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
753
794
|
gate = modules["update_cmd_pause_gate"]._checkout_move(token, revision, paths=paths, revert=True) if mutating else contextlib.nullcontext({})
|
|
754
795
|
if mutating:
|
|
755
796
|
recovery.state['transaction']['dependencies_verified'] = False
|
|
797
|
+
if args[0] in {'merge', 'reset', 'checkout'} and recovery.state.get('update_operation'):
|
|
798
|
+
recovery.state['update_operation'].pop('source_moved', None)
|
|
756
799
|
move_marker = None
|
|
757
800
|
if args[0] == 'merge' and '--ff-only' in args or args[0] == 'reset' and '--hard' in args:
|
|
758
801
|
commit = modules['update_cmd_commit']
|
|
@@ -776,6 +819,8 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
776
819
|
recovery.state['transaction']['dependencies_verified'] = True
|
|
777
820
|
else:
|
|
778
821
|
result = {'ok': False, 'detail': 'The source move did not leave a verified whole target; native rollback remains owed.'}
|
|
822
|
+
if result['ok'] and move_marker is not None and recovery.state.get('update_operation'):
|
|
823
|
+
recovery.state['update_operation']['source_moved'] = revision != recovery.state['update_operation']['baseline_revision']
|
|
779
824
|
if result["ok"] and applying and whole_before:
|
|
780
825
|
after = records.tree_state(root)
|
|
781
826
|
if before is None or after is None or before["pre_sha"] != after["pre_sha"]:
|
|
@@ -786,6 +831,10 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
786
831
|
baseline.update(after)
|
|
787
832
|
records.write(token)
|
|
788
833
|
recovery.save(token)
|
|
834
|
+
if not result['ok'] and recovery.state.get('update_operation'):
|
|
835
|
+
recovery.state['update_operation'].setdefault('attempt_error', result.get('detail', '')[:2000])
|
|
836
|
+
recovery.state['update_operation'].setdefault('failed_stage', recovery.state['update_operation']['stage'])
|
|
837
|
+
recovery.save(token)
|
|
789
838
|
send(result)
|
|
790
839
|
except BaseException as exc:
|
|
791
840
|
error = str(exc)
|
|
@@ -814,6 +863,9 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
814
863
|
pending = _command(modules['update_custody'].git_argv(['git'], ['for-each-ref', '--format=%(objectname)', 'refs/talaria/autostash/pending/']), root, 10, threading.Event(), modules['update_custody'])
|
|
815
864
|
if not pending['ok'] or pending['detail']:
|
|
816
865
|
raise RuntimeError('Gateway resume remains owed until retained local Agent edits are restored.')
|
|
866
|
+
if recovery.state.get('update_operation'):
|
|
867
|
+
recovery.state['update_operation']['stage'] = 'gateway_restart'
|
|
868
|
+
recovery.save(token)
|
|
817
869
|
if token.get("resume_needed"):
|
|
818
870
|
if bootstrap_repair:
|
|
819
871
|
records.write({**token, "resume_needed": True}, owner=records.UNOWNED)
|
|
@@ -836,6 +888,8 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
836
888
|
recovery.state['transaction']['runtime_revision'] = found['detail']
|
|
837
889
|
recovery.save(token)
|
|
838
890
|
else:
|
|
891
|
+
if recovery.state.get('update_operation'):
|
|
892
|
+
recovery.state['update_operation'].update(stage='agent_ready', recovered_revision=found['detail'])
|
|
839
893
|
recovery.state.pop('transaction', None)
|
|
840
894
|
recovery.save()
|
|
841
895
|
except BaseException as exc:
|
|
@@ -843,7 +897,14 @@ def _worker(root, revision, homes, requests, stopped, send, refresh_binding=None
|
|
|
843
897
|
if token and not handed_off:
|
|
844
898
|
records.write({**token, "resume_needed": True}, owner=records.UNOWNED)
|
|
845
899
|
finally:
|
|
846
|
-
|
|
900
|
+
try:
|
|
901
|
+
if error and token and recovery and recovery.state.get('update_operation') and (recovery.state.get('transaction') or {}).get('operation_id') == recovery.state['update_operation']['operation_id']:
|
|
902
|
+
operation = recovery.state['update_operation']
|
|
903
|
+
operation.setdefault('attempt_error', error[:2000])
|
|
904
|
+
operation.setdefault('failed_stage', operation['stage'])
|
|
905
|
+
recovery.save(token)
|
|
906
|
+
finally:
|
|
907
|
+
lock.release()
|
|
847
908
|
send({"ok": error is None, "detail": error or ""})
|
|
848
909
|
|
|
849
910
|
|
|
@@ -948,7 +1009,13 @@ def _resume_worker(root, stopped=None, complete_revision=None):
|
|
|
948
1009
|
if revision not in {r for b in tree.get('baselines', []) for r in [b.get('pre_sha'), *b.get('move_targets', []), *b.get('landed', {})]}:
|
|
949
1010
|
return {'ok': False, 'detail': 'Installed revision is outside the retained transaction; recovery was refused.'}
|
|
950
1011
|
moved = any(b.get('pre_sha') != revision for b in tree.get('baselines', []))
|
|
1012
|
+
operation = recovery.state.get('update_operation')
|
|
1013
|
+
if operation and any(sha != operation['baseline_revision'] for b in tree.get('baselines', []) for sha in b.get('landed', {})):
|
|
1014
|
+
operation['source_moved'] = True
|
|
951
1015
|
transaction = recovery.state.get('transaction') or {}
|
|
1016
|
+
operation = recovery.state.get('update_operation')
|
|
1017
|
+
if operation and transaction.get('operation_id') != operation['operation_id']:
|
|
1018
|
+
recovery.state.pop('update_operation', None)
|
|
952
1019
|
if recovery.state.get('sync_failed') or (moved and not transaction.get('dependencies_verified')) or (marker and marker.exists() and not transaction):
|
|
953
1020
|
if _writer_ledger(root, process_identity):
|
|
954
1021
|
return {'ok': False, 'detail': 'Recorded dependency repair is waiting for the existing writer drain; no additional stop was sent.'}
|
|
@@ -979,10 +1046,16 @@ def _resume_worker(root, stopped=None, complete_revision=None):
|
|
|
979
1046
|
if not Path(main_module.__file__).resolve().is_relative_to(root):
|
|
980
1047
|
raise RuntimeError("Gateway recovery loaded another Agent runtime.")
|
|
981
1048
|
records.recover(argv=[])
|
|
1049
|
+
if recovery.state.get('update_operation'):
|
|
1050
|
+
recovery.state['update_operation']['stage'] = 'gateway_restart'
|
|
1051
|
+
recovery.save(tree)
|
|
982
1052
|
try:
|
|
983
1053
|
recovery.resume(_writer_ledger)
|
|
984
1054
|
except services.GatewayDraining as exc:
|
|
985
1055
|
return {'ok': False, 'draining': True, 'detail': str(exc)}
|
|
1056
|
+
final_head = _command(custody.git_argv(['git'], ['rev-parse', 'HEAD']), root, 10, stopped, custody)
|
|
1057
|
+
if not final_head['ok'] or final_head['detail'] != revision or not records.tree_is_whole(tree, root)[0]:
|
|
1058
|
+
return {'ok': False, 'detail': 'Recovered source identity changed before readiness was verified; its evidence is retained.'}
|
|
986
1059
|
owed = records.record_path().exists() or bool(records._claims(records.record_path())) or bool(recovery.state['entries'])
|
|
987
1060
|
runtime_pending = bool((marker and marker.exists()) or (recovery.state.get('transaction') or {}).get('runtime_revision'))
|
|
988
1061
|
if not owed and runtime_pending:
|
|
@@ -993,11 +1066,16 @@ def _resume_worker(root, stopped=None, complete_revision=None):
|
|
|
993
1066
|
transaction['runtime_revision'] = revision
|
|
994
1067
|
recovery.save(tree)
|
|
995
1068
|
if not owed and not runtime_pending:
|
|
1069
|
+
# Retain the transaction through durable marker removal, including a failed unlink or crash.
|
|
1070
|
+
if marker:
|
|
1071
|
+
marker.unlink(missing_ok=True)
|
|
1072
|
+
if marker.parent.is_dir():
|
|
1073
|
+
recovery._sync_directory(marker.parent)
|
|
1074
|
+
if recovery.state.get('update_operation'):
|
|
1075
|
+
recovery.state['update_operation'].update(stage='agent_ready', recovered_revision=revision)
|
|
996
1076
|
recovery.state.pop('transaction', None)
|
|
997
1077
|
recovery.state['sync_failed'] = False
|
|
998
1078
|
recovery.save()
|
|
999
|
-
if marker:
|
|
1000
|
-
marker.unlink(missing_ok=True)
|
|
1001
1079
|
return {"ok": not owed, "revision": revision, "runtime_pending": runtime_pending, "detail": "Gateway recovery remains durably recorded." if owed else ""}
|
|
1002
1080
|
finally:
|
|
1003
1081
|
lock.release()
|
|
@@ -1102,7 +1180,7 @@ def main():
|
|
|
1102
1180
|
send(reply)
|
|
1103
1181
|
return
|
|
1104
1182
|
with contextlib.redirect_stdout(sys.stderr):
|
|
1105
|
-
_worker(Path(sys.argv[1]).resolve(), sys.argv[2], {Path(h).resolve() for h in json.loads(sys.argv[3])}, requests, stopped, send, sys.argv[4] if len(sys.argv) > 4 else None)
|
|
1183
|
+
_worker(Path(sys.argv[1]).resolve(), sys.argv[2], {Path(h).resolve() for h in json.loads(sys.argv[3])}, requests, stopped, send, sys.argv[4] if len(sys.argv) > 4 else None, json.loads(sys.argv[5]) if len(sys.argv) > 5 and sys.argv[5] else None)
|
|
1106
1184
|
except BaseException as exc:
|
|
1107
1185
|
send({"ok": False, "detail": str(exc)})
|
|
1108
1186
|
|