@circuitwall/jarela 2.2.0 → 2.3.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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +4 -3
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +8 -0
- package/.next/standalone/.next/server/app/_global-error/page.js +68 -68
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js +76 -76
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/v1/access/[identity]/route.js +93 -93
- package/.next/standalone/.next/server/app/api/v1/access/route.js +169 -169
- package/.next/standalone/.next/server/app/api/v1/agents/[id]/compact/route.js +82 -56
- package/.next/standalone/.next/server/app/api/v1/agents/[id]/compact/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/agents/[id]/display-filters/route.js +122 -122
- package/.next/standalone/.next/server/app/api/v1/agents/[id]/route.js +100 -100
- package/.next/standalone/.next/server/app/api/v1/agents/[id]/thread/route.js +753 -753
- package/.next/standalone/.next/server/app/api/v1/agents/route.js +65 -65
- package/.next/standalone/.next/server/app/api/v1/allowed-sites/[hostname]/route.js +364 -364
- package/.next/standalone/.next/server/app/api/v1/allowed-sites/route.js +802 -802
- package/.next/standalone/.next/server/app/api/v1/artifacts/lifecycle/route.js +2 -2
- package/.next/standalone/.next/server/app/api/v1/attachments/files/route.js +49 -49
- package/.next/standalone/.next/server/app/api/v1/attachments/images/route.js +910 -910
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/chats/route.js +589 -16
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/chats/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/ignores/[remote_jid]/route.js +23 -23
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/ignores/route.js +30 -30
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/lookup/route.js +703 -130
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/lookup/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/pair/route.js +708 -135
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/pair/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/route.js +802 -229
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/routes/[route_id]/route.js +739 -739
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/routes/route.js +1035 -1035
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/status/route.js +679 -106
- package/.next/standalone/.next/server/app/api/v1/bridges/[id]/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/bridges/kinds/route.js +804 -804
- package/.next/standalone/.next/server/app/api/v1/bridges/route.js +700 -700
- package/.next/standalone/.next/server/app/api/v1/builtin-tools/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/builtin-tools/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/config/route.js +85 -85
- package/.next/standalone/.next/server/app/api/v1/credentials/[id]/route.js +709 -709
- package/.next/standalone/.next/server/app/api/v1/credentials/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/credentials/route.js +2 -2
- package/.next/standalone/.next/server/app/api/v1/credentials/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/dashboard/currency/route.js +10 -10
- package/.next/standalone/.next/server/app/api/v1/dashboard/metrics/route.js +784 -784
- package/.next/standalone/.next/server/app/api/v1/dashboard/pricing/route.js +23 -23
- package/.next/standalone/.next/server/app/api/v1/dashboard/pricing-task/route.js +86 -86
- package/.next/standalone/.next/server/app/api/v1/dashboard/pricing-task/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/delegations/codex/[job_id]/route.js +57 -57
- package/.next/standalone/.next/server/app/api/v1/delegations/codex/[job_id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/documents/search/route.js +523 -523
- package/.next/standalone/.next/server/app/api/v1/documents/settings/route.js +44 -44
- package/.next/standalone/.next/server/app/api/v1/documents/sources/[id]/reindex/route.js +65 -65
- package/.next/standalone/.next/server/app/api/v1/documents/sources/[id]/reindex/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/documents/sources/[id]/route.js +122 -122
- package/.next/standalone/.next/server/app/api/v1/documents/sources/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/documents/sources/route.js +37 -37
- package/.next/standalone/.next/server/app/api/v1/documents/sources/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/env/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/env-sync/allowlist/route.js +368 -368
- package/.next/standalone/.next/server/app/api/v1/env-sync/route.js +44 -44
- package/.next/standalone/.next/server/app/api/v1/events/route.js +751 -178
- package/.next/standalone/.next/server/app/api/v1/events/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/events/test/route.js +77 -77
- package/.next/standalone/.next/server/app/api/v1/extension/agents/route.js +763 -763
- package/.next/standalone/.next/server/app/api/v1/extension/agents/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extension/browser/activate/route.js +44 -44
- package/.next/standalone/.next/server/app/api/v1/extension/browser/foreground/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/extension/browser/history/route.js +65 -65
- package/.next/standalone/.next/server/app/api/v1/extension/browser/poll/route.js +34 -34
- package/.next/standalone/.next/server/app/api/v1/extension/browser/progress/route.js +204 -204
- package/.next/standalone/.next/server/app/api/v1/extension/browser/result/route.js +133 -133
- package/.next/standalone/.next/server/app/api/v1/extension/browser/retry/route.js +106 -106
- package/.next/standalone/.next/server/app/api/v1/extension/browser/status/route.js +114 -114
- package/.next/standalone/.next/server/app/api/v1/extension/browser/tabs/route.js +134 -134
- package/.next/standalone/.next/server/app/api/v1/extension/fill/route.js +690 -690
- package/.next/standalone/.next/server/app/api/v1/extension/fill/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extension/refine/route.js +93 -93
- package/.next/standalone/.next/server/app/api/v1/extension/refine/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extension/turn/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/extension/turn/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extensions/route.js +185 -185
- package/.next/standalone/.next/server/app/api/v1/extensions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/config/route.js +171 -171
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/route.js +396 -396
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/secrets/route.js +212 -212
- package/.next/standalone/.next/server/app/api/v1/extensions/tools/[name]/secrets/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/files/[name]/route.js +235 -235
- package/.next/standalone/.next/server/app/api/v1/fs/browse/route.js +26 -26
- package/.next/standalone/.next/server/app/api/v1/harnesses/[id]/route.js +221 -221
- package/.next/standalone/.next/server/app/api/v1/harnesses/default/route.js +58 -58
- package/.next/standalone/.next/server/app/api/v1/harnesses/route.js +72 -72
- package/.next/standalone/.next/server/app/api/v1/health/probes/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/health/probes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/health/route.js +772 -772
- package/.next/standalone/.next/server/app/api/v1/integrations/[name]/route.js +133 -133
- package/.next/standalone/.next/server/app/api/v1/integrations/[name]/test/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/integrations/[name]/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/integrations/gmail/oauth/callback/route.js +363 -363
- package/.next/standalone/.next/server/app/api/v1/integrations/gmail/oauth/start/route.js +233 -233
- package/.next/standalone/.next/server/app/api/v1/integrations/gmail/oauth/status/route.js +682 -682
- package/.next/standalone/.next/server/app/api/v1/integrations/outlook/oauth/callback/route.js +879 -879
- package/.next/standalone/.next/server/app/api/v1/integrations/outlook/oauth/start/route.js +108 -108
- package/.next/standalone/.next/server/app/api/v1/integrations/outlook/oauth/status/route.js +952 -952
- package/.next/standalone/.next/server/app/api/v1/integrations/route.js +216 -216
- package/.next/standalone/.next/server/app/api/v1/lifecycle/adoption/route.js +864 -847
- package/.next/standalone/.next/server/app/api/v1/lifecycle/adoption/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/local-file/route.js +26 -26
- package/.next/standalone/.next/server/app/api/v1/logs/route.js +70 -70
- package/.next/standalone/.next/server/app/api/v1/maps/embed/route.js +72 -72
- package/.next/standalone/.next/server/app/api/v1/mcp-servers/[name]/route.js +979 -979
- package/.next/standalone/.next/server/app/api/v1/mcp-servers/registry/route.js +196 -196
- package/.next/standalone/.next/server/app/api/v1/mcp-servers/route.js +2 -2
- package/.next/standalone/.next/server/app/api/v1/memory/[namespace]/[key]/route.js +381 -381
- package/.next/standalone/.next/server/app/api/v1/memory/policy/route.js +79 -79
- package/.next/standalone/.next/server/app/api/v1/memory/route.js +51 -51
- package/.next/standalone/.next/server/app/api/v1/memory/search/route.js +131 -131
- package/.next/standalone/.next/server/app/api/v1/models/[name]/compact-threads/route.js +374 -369
- package/.next/standalone/.next/server/app/api/v1/models/[name]/compact-threads/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/models/[name]/route.js +204 -163
- package/.next/standalone/.next/server/app/api/v1/models/route.js +548 -546
- package/.next/standalone/.next/server/app/api/v1/packages/catalog/route.js +445 -445
- package/.next/standalone/.next/server/app/api/v1/packages/defaults/[id]/route.js +120 -120
- package/.next/standalone/.next/server/app/api/v1/packages/defaults/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/install/[id]/route.js +234 -234
- package/.next/standalone/.next/server/app/api/v1/packages/install/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/install/route.js +407 -407
- package/.next/standalone/.next/server/app/api/v1/packages/install/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/[name]/enabled/route.js +37 -37
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/[name]/enabled/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/[name]/route.js +107 -107
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/[name]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/route.js +228 -228
- package/.next/standalone/.next/server/app/api/v1/packages/manifests/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/reload/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/packages/reload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/packages/route.js +148 -148
- package/.next/standalone/.next/server/app/api/v1/packages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/page-capture/route.js +787 -787
- package/.next/standalone/.next/server/app/api/v1/page-capture/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/pending-actions/[id]/approve/route.js +507 -507
- package/.next/standalone/.next/server/app/api/v1/pending-actions/[id]/approve/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/pending-actions/[id]/deny/route.js +181 -181
- package/.next/standalone/.next/server/app/api/v1/pending-actions/[id]/deny/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/pending-actions/route.js +258 -258
- package/.next/standalone/.next/server/app/api/v1/pending-actions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/profile/location/route.js +30 -30
- package/.next/standalone/.next/server/app/api/v1/profile/route.js +164 -164
- package/.next/standalone/.next/server/app/api/v1/providers/[provider]/models/route.js +71 -68
- package/.next/standalone/.next/server/app/api/v1/providers/[provider]/probe/route.js +9 -9
- package/.next/standalone/.next/server/app/api/v1/providers/github-copilot/auth/route.js +164 -164
- package/.next/standalone/.next/server/app/api/v1/providers/route.js +94 -94
- package/.next/standalone/.next/server/app/api/v1/proxy-config/route.js +450 -450
- package/.next/standalone/.next/server/app/api/v1/redaction/init/route.js +37 -37
- package/.next/standalone/.next/server/app/api/v1/redaction/route.js +58 -58
- package/.next/standalone/.next/server/app/api/v1/scheduled-tasks/[id]/route.js +600 -600
- package/.next/standalone/.next/server/app/api/v1/scheduled-tasks/[id]/run/route.js +44 -44
- package/.next/standalone/.next/server/app/api/v1/scheduled-tasks/[id]/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/scheduled-tasks/route.js +732 -732
- package/.next/standalone/.next/server/app/api/v1/security/idle-timeout/route.js +359 -359
- package/.next/standalone/.next/server/app/api/v1/security/pin/route.js +197 -197
- package/.next/standalone/.next/server/app/api/v1/security/state/route.js +51 -51
- package/.next/standalone/.next/server/app/api/v1/security/unlock/route.js +176 -176
- package/.next/standalone/.next/server/app/api/v1/security/verify-pin/route.js +190 -190
- package/.next/standalone/.next/server/app/api/v1/setup/test-key/route.js +26 -26
- package/.next/standalone/.next/server/app/api/v1/skills/[id]/route.js +770 -770
- package/.next/standalone/.next/server/app/api/v1/skills/repos/[id]/route.js +115 -115
- package/.next/standalone/.next/server/app/api/v1/skills/repos/route.js +327 -327
- package/.next/standalone/.next/server/app/api/v1/skills/route.js +870 -870
- package/.next/standalone/.next/server/app/api/v1/system/abort/route.js +838 -808
- package/.next/standalone/.next/server/app/api/v1/system/restart/route.js +177 -177
- package/.next/standalone/.next/server/app/api/v1/system/restart/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/tailscale/route.js +164 -164
- package/.next/standalone/.next/server/app/api/v1/tasks/[agent_id]/route.js +115 -115
- package/.next/standalone/.next/server/app/api/v1/tasks/route.js +23 -23
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/activity/route.js +1429 -0
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/activity/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/activity/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/context-pin/route.js +635 -634
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/context-pin/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/route.js +53 -439
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/run/route.js +172 -172
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/threads/route.js +908 -908
- package/.next/standalone/.next/server/app/api/v1/tools/route.js +2 -2
- package/.next/standalone/.next/server/app/api/v1/tools/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/update/apply/route.js +17 -17
- package/.next/standalone/.next/server/app/api/v1/update/apply/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/update/route.js +570 -570
- package/.next/standalone/.next/server/app/api/v1/voice/transcribe/route.js +224 -224
- package/.next/standalone/.next/server/app/api/v1/voice/tts/route.js +975 -975
- package/.next/standalone/.next/server/app/api/v1/watchers/[id]/route.js +23 -23
- package/.next/standalone/.next/server/app/api/v1/watchers/[id]/run/route.js +72 -72
- package/.next/standalone/.next/server/app/api/v1/watchers/[id]/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/watchers/reaction-scripts/route.js +128 -128
- package/.next/standalone/.next/server/app/api/v1/watchers/route.js +164 -164
- package/.next/standalone/.next/server/app/api/v1/watchers/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/icon.svg/route.js +62 -62
- package/.next/standalone/.next/server/app/manifest.webmanifest/route.js +436 -436
- package/.next/standalone/.next/server/app/page.js +1170 -719
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/setup/page.js +91 -91
- package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +4 -3
- package/.next/standalone/.next/server/chunks/{424.js → 1388.js} +345 -991
- package/.next/standalone/.next/server/chunks/1433.js +1 -1
- package/.next/standalone/.next/server/chunks/1638.js +1 -2
- package/.next/standalone/.next/server/chunks/1738.js +1 -1
- package/.next/standalone/.next/server/chunks/210.js +6 -6
- package/.next/standalone/.next/server/chunks/2151.js +31 -1
- package/.next/standalone/.next/server/chunks/2207.js +1 -0
- package/.next/standalone/.next/server/chunks/2471.js +45 -45
- package/.next/standalone/.next/server/chunks/2504.js +1 -1
- package/.next/standalone/.next/server/chunks/2695.js +17 -17
- package/.next/standalone/.next/server/chunks/3042.js +14 -8
- package/.next/standalone/.next/server/chunks/3399.js +10695 -10695
- package/.next/standalone/.next/server/chunks/3524.js +5 -33
- package/.next/standalone/.next/server/chunks/3566.js +1 -1
- package/.next/standalone/.next/server/chunks/4189.js +946 -0
- package/.next/standalone/.next/server/chunks/{9590.js → 423.js} +116 -49
- package/.next/standalone/.next/server/chunks/4433.js +146 -146
- package/.next/standalone/.next/server/chunks/4508.js +3 -3
- package/.next/standalone/.next/server/chunks/4588.js +1 -0
- package/.next/standalone/.next/server/chunks/46.js +116 -46
- package/.next/standalone/.next/server/chunks/466.js +100 -13
- package/.next/standalone/.next/server/chunks/4868.js +206 -206
- package/.next/standalone/.next/server/chunks/4992.js +13 -0
- package/.next/standalone/.next/server/chunks/5120.js +963 -0
- package/.next/standalone/.next/server/chunks/5701.js +1 -1
- package/.next/standalone/.next/server/chunks/5900.js +1 -1
- package/.next/standalone/.next/server/chunks/6210.js +1 -0
- package/.next/standalone/.next/server/chunks/6213.js +1 -1
- package/.next/standalone/.next/server/chunks/6649.js +3 -3
- package/.next/standalone/.next/server/chunks/6703.js +3 -3
- package/.next/standalone/.next/server/chunks/7445.js +1 -0
- package/.next/standalone/.next/server/chunks/8067.js +12 -0
- package/.next/standalone/.next/server/chunks/8461.js +14 -9
- package/.next/standalone/.next/server/chunks/8558.js +1 -1
- package/.next/standalone/.next/server/chunks/8724.js +1 -1
- package/.next/standalone/.next/server/chunks/8849.js +91 -91
- package/.next/standalone/.next/server/chunks/9032.js +6 -5
- package/.next/standalone/.next/server/chunks/{2563.js → 9164.js} +33106 -31420
- package/.next/standalone/.next/server/chunks/9237.js +396 -396
- package/.next/standalone/.next/server/chunks/{9640.js → 9304.js} +1628 -573
- package/.next/standalone/.next/server/chunks/9406.js +1 -1
- package/.next/standalone/.next/server/chunks/9824.js +98 -98
- package/.next/standalone/.next/server/chunks/9826.js +1 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +2 -2
- package/.next/standalone/.next/server/middleware.js +519 -442
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/preview-props.json +3 -3
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{1395-f201e3e2e1f57715.js → 1395-e4a99912b8f83044.js} +101 -14
- package/.next/standalone/.next/static/chunks/{4576-13f7546a145a3624.js → 7045-8bc2f14e430ca661.js} +58 -2
- package/.next/standalone/.next/static/chunks/app/_global-error/{page-36cb8b428b38b26a.js → page-6fc5f8e744c81802.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/access/[identity]/{route-36cb8b428b38b26a.js → route-6fc5f8e744c81802.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/access/{route-36cb8b428b38b26a.js → route-6fc5f8e744c81802.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/compact/{route-36cb8b428b38b26a.js → route-6fc5f8e744c81802.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/display-filters/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/thread/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/allowed-sites/[hostname]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/allowed-sites/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/artifacts/lifecycle/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/attachments/files/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/attachments/images/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/chats/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/ignores/[remote_jid]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/ignores/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/lookup/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/pair/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/routes/[route_id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/routes/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/status/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/kinds/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/builtin-tools/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/config/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/credentials/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/credentials/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/currency/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/metrics/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/pricing/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/pricing-task/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/delegations/codex/[job_id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/search/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/settings/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/[id]/reindex/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/env/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/env-sync/allowlist/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/env-sync/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/events/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/events/test/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/agents/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/activate/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/foreground/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/history/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/poll/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/progress/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/result/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/retry/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/status/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/tabs/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/fill/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/refine/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/turn/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/config/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/secrets/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/files/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/fs/browse/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/default/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/health/probes/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/health/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/[name]/test/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/callback/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/start/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/status/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/callback/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/start/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/status/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/lifecycle/adoption/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/local-file/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/logs/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/maps/embed/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/registry/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/[namespace]/[key]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/policy/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/search/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/models/[name]/compact-threads/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/models/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/models/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/catalog/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/defaults/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/install/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/install/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/[name]/enabled/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/[name]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/reload/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/page-capture/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/[id]/approve/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/[id]/deny/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/profile/location/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/profile/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/[provider]/models/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/[provider]/probe/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/github-copilot/auth/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/proxy-config/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/redaction/init/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/redaction/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/[id]/run/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/security/idle-timeout/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/security/pin/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/security/state/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/security/unlock/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/security/verify-pin/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/setup/test-key/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/repos/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/repos/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/system/abort/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/system/restart/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/tailscale/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/tasks/[agent_id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/tasks/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/activity/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/context-pin/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/run/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/tools/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/update/apply/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/update/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/voice/transcribe/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/voice/tts/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/[id]/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/[id]/run/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/reaction-scripts/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/manifest.webmanifest/route-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/app/{page-c6e972a7fd13dae8.js → page-213a623b37226452.js} +1012 -604
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6fc5f8e744c81802.js +17 -0
- package/.next/standalone/.next/static/css/{d80058f0b9b41c09.css → 312542a5725ba0d5.css} +2 -2
- package/.next/standalone/docs/adoption/changesets.json +309 -0
- package/.next/standalone/lib/skills/builtins/memory-organization/SKILL.md +16 -0
- package/.next/standalone/package.json +3 -3
- package/CHANGELOG.md +33 -0
- package/api/client.models.test.ts +31 -0
- package/api/client.ts +25 -1
- package/api/types.ts +37 -0
- package/app/api/v1/lifecycle/adoption/route.ts +14 -2
- package/app/api/v1/models/[name]/compact-threads/route.ts +14 -11
- package/app/api/v1/models/[name]/route.test.ts +89 -0
- package/app/api/v1/models/[name]/route.ts +54 -3
- package/app/api/v1/models/route.ts +4 -2
- package/app/api/v1/providers/[provider]/models/route.test.ts +53 -0
- package/app/api/v1/providers/[provider]/models/route.ts +27 -16
- package/app/api/v1/threads/[thread_id]/activity/route.ts +19 -0
- package/app/api/v1/threads/[thread_id]/context-pin/route.test.ts +1 -0
- package/app/api/v1/threads/[thread_id]/context-pin/route.ts +2 -1
- package/app/api/v1/threads/[thread_id]/route.ts +5 -1
- package/components/agents/agent-editor/AdvancedSection.tsx +8 -2
- package/components/agents/agent-editor/ModelSection.tsx +6 -3
- package/components/chat/ChatView.tsx +52 -11
- package/components/chat/ContextBoundary.test.tsx +68 -1
- package/components/chat/ContextBoundary.tsx +92 -13
- package/components/chat/MessageList.test.tsx +31 -0
- package/components/chat/MessageList.tsx +49 -28
- package/components/chat/ToolList.test.tsx +92 -16
- package/components/chat/ToolList.tsx +59 -4
- package/components/chat/chat-helpers.test.tsx +24 -1
- package/components/chat/chat-helpers.ts +47 -4
- package/components/chat/useThreadActivity.test.tsx +113 -0
- package/components/chat/useThreadActivity.ts +94 -0
- package/components/chat/useThreadData.ts +16 -16
- package/components/chat/workflow-step-retry.ts +25 -0
- package/components/models/ModelEditor.tsx +1 -1
- package/components/models/ModelsPanel.tsx +34 -8
- package/components/models/model-editor/GitHubCopilotAuth.tsx +1 -1
- package/components/models/model-editor/save-helpers.ts +2 -2
- package/components/models/model-editor/useModelEditorForm.ts +1 -1
- package/components/models/model-editor/useModelSaveHandlers.ts +1 -1
- package/components/setup/wizard/StepCredentials.tsx +1 -1
- package/components/setup/wizard/StepModel.tsx +3 -8
- package/components/ui/BootScreen.tsx +17 -0
- package/components/ui/WorkflowChecklist.tsx +71 -33
- package/hooks/useModels.ts +17 -1
- package/hooks/useSSE.ts +28 -3
- package/lib/agents/compaction-pipeline.test.ts +202 -0
- package/lib/agents/compaction-pipeline.ts +483 -0
- package/lib/agents/conversation-summary.ts +37 -21
- package/lib/agents/effective-model.test.ts +45 -0
- package/lib/agents/effective-model.ts +11 -5
- package/lib/agents/llm.ts +2 -2
- package/lib/agents/prepare/history-window.test.ts +18 -0
- package/lib/agents/prepare/history-window.ts +11 -2
- package/lib/agents/prepare/request.ts +4 -0
- package/lib/agents/prepare/system-prompt.test.ts +39 -0
- package/lib/agents/prepare/system-prompt.ts +8 -3
- package/lib/agents/prompt-registry.test.ts +5 -140
- package/lib/agents/prompt-registry.ts +45 -1
- package/lib/agents/prompt-variants.ts +146 -0
- package/lib/agents/run-registry.test.ts +22 -0
- package/lib/agents/run-registry.ts +29 -0
- package/lib/agents/run-thread.retry.test.ts +67 -1
- package/lib/agents/run-thread.ts +96 -6
- package/lib/agents/thread-activity.test.ts +31 -0
- package/lib/agents/thread-activity.ts +27 -0
- package/lib/agents/thread-compaction-state.test.ts +82 -0
- package/lib/agents/thread-compaction-state.ts +121 -0
- package/lib/agents/thread-compaction.test.ts +83 -4
- package/lib/agents/thread-compaction.ts +34 -11
- package/lib/agents/warm-summary-background.test.ts +220 -7
- package/lib/agents/warm-summary-background.ts +329 -149
- package/lib/agents/warm-topics.test.ts +37 -0
- package/lib/agents/warm-topics.ts +297 -0
- package/lib/agents/workflow-step-retry.test.ts +96 -0
- package/lib/agents/workflow-step-retry.ts +216 -0
- package/lib/api/browser-control.ts +0 -3
- package/lib/db/migrations.ts +15 -0
- package/lib/env/config.ts +2 -0
- package/lib/env/schema.ts +12 -0
- package/lib/health/probes.test.ts +8 -11
- package/lib/health/probes.ts +5 -31
- package/lib/lifecycle/changeset-build.test.ts +93 -0
- package/lib/lifecycle/changeset-build.ts +210 -0
- package/lib/lifecycle/changesets.test.ts +101 -0
- package/lib/lifecycle/changesets.ts +166 -0
- package/lib/lifecycle/surface-collect.test.ts +88 -0
- package/lib/lifecycle/surface-collect.ts +64 -0
- package/lib/lifecycle/surface-snapshot.test.ts +104 -0
- package/lib/lifecycle/surface-snapshot.ts +210 -0
- package/lib/memory/record.ts +0 -2
- package/lib/models/editor-payload.ts +1 -1
- package/lib/providers/external.ts +0 -2
- package/lib/providers/github-copilot-auth.ts +2 -3
- package/lib/providers/github-copilot.test.ts +27 -0
- package/lib/providers/github-copilot.ts +21 -44
- package/lib/skills/builtins/memory-organization/SKILL.md +16 -0
- package/lib/stores/integrations.test.ts +7 -0
- package/lib/stores/integrations.ts +4 -4
- package/lib/stores/model-config.test.ts +88 -0
- package/lib/stores/model-config.ts +90 -8
- package/lib/stores/threads.test.ts +9 -0
- package/lib/stores/threads.ts +21 -11
- package/lib/stores/version-adoption.test.ts +96 -0
- package/lib/stores/version-adoption.ts +239 -26
- package/lib/stores/workflow-progress.ts +3 -0
- package/lib/tools/communications/ms-todo.ts +0 -7
- package/lib/tools/general/memory.ts +1 -1
- package/lib/tools/general/workflow-progress.ts +2 -0
- package/lib/tools/runtime/catalog.ts +1 -25
- package/lib/triggers/registry.ts +0 -4
- package/package.json +3 -3
- package/scripts/install-to-system.ps1 +39 -11
- package/scripts/install-to-system.sh +37 -3
- package/.next/standalone/.next/server/chunks/3979.js +0 -581
- package/.next/standalone/.next/server/chunks/5936.js +0 -594
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/display-filters/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/thread/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/agents/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/allowed-sites/[hostname]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/allowed-sites/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/artifacts/lifecycle/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/attachments/files/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/attachments/images/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/chats/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/ignores/[remote_jid]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/ignores/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/lookup/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/pair/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/routes/[route_id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/routes/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/[id]/status/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/kinds/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/bridges/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/builtin-tools/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/config/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/credentials/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/credentials/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/currency/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/metrics/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/pricing/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/dashboard/pricing-task/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/delegations/codex/[job_id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/search/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/settings/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/[id]/reindex/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/documents/sources/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/env/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/env-sync/allowlist/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/env-sync/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/events/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/events/test/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/agents/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/activate/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/foreground/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/history/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/poll/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/progress/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/result/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/retry/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/status/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/browser/tabs/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/fill/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/refine/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extension/turn/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/config/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/extensions/tools/[name]/secrets/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/files/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/fs/browse/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/default/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/harnesses/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/health/probes/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/health/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/[name]/test/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/callback/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/start/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/gmail/oauth/status/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/callback/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/start/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/outlook/oauth/status/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/integrations/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/lifecycle/adoption/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/local-file/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/logs/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/maps/embed/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/registry/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/mcp-servers/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/[namespace]/[key]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/policy/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/memory/search/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/models/[name]/compact-threads/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/models/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/models/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/catalog/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/defaults/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/install/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/install/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/[name]/enabled/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/[name]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/manifests/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/reload/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/packages/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/page-capture/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/[id]/approve/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/[id]/deny/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/pending-actions/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/profile/location/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/profile/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/[provider]/models/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/[provider]/probe/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/github-copilot/auth/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/providers/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/proxy-config/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/redaction/init/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/redaction/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/[id]/run/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/scheduled-tasks/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/security/idle-timeout/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/security/pin/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/security/state/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/security/unlock/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/security/verify-pin/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/setup/test-key/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/repos/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/repos/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/skills/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/system/abort/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/system/restart/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/tailscale/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/tasks/[agent_id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/tasks/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/context-pin/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/[thread_id]/run/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/threads/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/tools/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/update/apply/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/update/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/voice/transcribe/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/voice/tts/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/[id]/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/[id]/run/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/reaction-scripts/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/api/v1/watchers/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/app/manifest.webmanifest/route-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-36cb8b428b38b26a.js +0 -17
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-36cb8b428b38b26a.js +0 -17
- /package/.next/standalone/.next/static/{e2NV1wk6mWg3SIeELXevg → bMRK5y3ruT7c3WtBfCQOG}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{e2NV1wk6mWg3SIeELXevg → bMRK5y3ruT7c3WtBfCQOG}/_ssgManifest.js +0 -0
|
@@ -29582,7 +29582,7 @@ Object.defineProperty(exports, "getImplicitTags", ({
|
|
|
29582
29582
|
}));
|
|
29583
29583
|
const _constants = __webpack_require__(96100);
|
|
29584
29584
|
const _handlers = __webpack_require__(57155);
|
|
29585
|
-
const _encodeheadersafe = __webpack_require__(
|
|
29585
|
+
const _encodeheadersafe = __webpack_require__(37809);
|
|
29586
29586
|
const _lazyresult = __webpack_require__(31147);
|
|
29587
29587
|
const getDerivedTags = (pathname)=>{
|
|
29588
29588
|
const derivedTags = [
|
|
@@ -33056,6 +33056,57 @@ function _stringFormat(Class, format, fnOrRegex, _params = {}) {
|
|
|
33056
33056
|
}
|
|
33057
33057
|
|
|
33058
33058
|
|
|
33059
|
+
/***/ }),
|
|
33060
|
+
|
|
33061
|
+
/***/ 37809:
|
|
33062
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
33063
|
+
|
|
33064
|
+
"use strict";
|
|
33065
|
+
/**
|
|
33066
|
+
* Percent-encode every character other than horizontal tab and printable ASCII
|
|
33067
|
+
* so a value can be safely serialized into an HTTP header.
|
|
33068
|
+
*
|
|
33069
|
+
* Node's `validateHeaderValue` and `fetch`'s ByteString conversion accept
|
|
33070
|
+
* different character ranges. Restricting values to `\t\x20-\x7e` produces a
|
|
33071
|
+
* conservative representation that both can serialize. Characters outside a
|
|
33072
|
+
* transport's accepted range (Hebrew, Arabic, Chinese, emoji, …) would
|
|
33073
|
+
* otherwise throw `ERR_INVALID_CHAR` or a `TypeError`, which crashes ISR or
|
|
33074
|
+
* fails a cache read on every affected request.
|
|
33075
|
+
*
|
|
33076
|
+
* Cache tags are encoded at the public boundaries — tag construction
|
|
33077
|
+
* (`getImplicitTags`, `validateTags`) and invalidation input
|
|
33078
|
+
* (`revalidatePath`, `revalidateTag`, `updateTag`) — so storage, comparison,
|
|
33079
|
+
* and the wire all see the same canonical form.
|
|
33080
|
+
*
|
|
33081
|
+
* The class is narrower than either transport accepts. Everything inside it
|
|
33082
|
+
* passes through byte-for-byte, including `,`, `/`, `%`, `[`, `]`, `_`, `-` and
|
|
33083
|
+
* `\t`, which preserves the comma-separated header format and the
|
|
33084
|
+
* dynamic-segment markers in derived tags (`_N_T_/[slug]/page`).
|
|
33085
|
+
*
|
|
33086
|
+
* Properties:
|
|
33087
|
+
* - Fast-path: input that already fits the class is returned unchanged. This
|
|
33088
|
+
* makes the encoder idempotent on already-encoded `%xx` sequences.
|
|
33089
|
+
* - Matches *runs* of out-of-class code units so surrogate pairs (e.g. an
|
|
33090
|
+
* emoji) are handed to `encodeURIComponent` as a complete code point — a
|
|
33091
|
+
* per-code-unit regex would split the pair and throw `URIError`.
|
|
33092
|
+
*/
|
|
33093
|
+
Object.defineProperty(exports, "__esModule", ({
|
|
33094
|
+
value: true
|
|
33095
|
+
}));
|
|
33096
|
+
Object.defineProperty(exports, "encodeHeaderSafe", ({
|
|
33097
|
+
enumerable: true,
|
|
33098
|
+
get: function() {
|
|
33099
|
+
return encodeHeaderSafe;
|
|
33100
|
+
}
|
|
33101
|
+
}));
|
|
33102
|
+
const OUT_OF_CLASS_CHAR = /[^\t\x20-\x7e]/;
|
|
33103
|
+
const OUT_OF_CLASS_RUN = /[^\t\x20-\x7e]+/g;
|
|
33104
|
+
function encodeHeaderSafe(value) {
|
|
33105
|
+
return OUT_OF_CLASS_CHAR.test(value) ? value.replace(OUT_OF_CLASS_RUN, (run)=>encodeURIComponent(run)) : value;
|
|
33106
|
+
}
|
|
33107
|
+
|
|
33108
|
+
//# sourceMappingURL=encode-header-safe.js.map
|
|
33109
|
+
|
|
33059
33110
|
/***/ }),
|
|
33060
33111
|
|
|
33061
33112
|
/***/ 38169:
|
|
@@ -37202,350 +37253,6 @@ class InvariantError extends Error {
|
|
|
37202
37253
|
} //# sourceMappingURL=invariant-error.js.map
|
|
37203
37254
|
|
|
37204
37255
|
|
|
37205
|
-
/***/ }),
|
|
37206
|
-
|
|
37207
|
-
/***/ 42851:
|
|
37208
|
-
/***/ ((module) => {
|
|
37209
|
-
|
|
37210
|
-
"use strict";
|
|
37211
|
-
|
|
37212
|
-
|
|
37213
|
-
var has = Object.prototype.hasOwnProperty
|
|
37214
|
-
, prefix = '~';
|
|
37215
|
-
|
|
37216
|
-
/**
|
|
37217
|
-
* Constructor to create a storage for our `EE` objects.
|
|
37218
|
-
* An `Events` instance is a plain object whose properties are event names.
|
|
37219
|
-
*
|
|
37220
|
-
* @constructor
|
|
37221
|
-
* @private
|
|
37222
|
-
*/
|
|
37223
|
-
function Events() {}
|
|
37224
|
-
|
|
37225
|
-
//
|
|
37226
|
-
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
37227
|
-
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
37228
|
-
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
37229
|
-
// character to make sure that the built-in object properties are not
|
|
37230
|
-
// overridden or used as an attack vector.
|
|
37231
|
-
//
|
|
37232
|
-
if (Object.create) {
|
|
37233
|
-
Events.prototype = Object.create(null);
|
|
37234
|
-
|
|
37235
|
-
//
|
|
37236
|
-
// This hack is needed because the `__proto__` property is still inherited in
|
|
37237
|
-
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
37238
|
-
//
|
|
37239
|
-
if (!new Events().__proto__) prefix = false;
|
|
37240
|
-
}
|
|
37241
|
-
|
|
37242
|
-
/**
|
|
37243
|
-
* Representation of a single event listener.
|
|
37244
|
-
*
|
|
37245
|
-
* @param {Function} fn The listener function.
|
|
37246
|
-
* @param {*} context The context to invoke the listener with.
|
|
37247
|
-
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
37248
|
-
* @constructor
|
|
37249
|
-
* @private
|
|
37250
|
-
*/
|
|
37251
|
-
function EE(fn, context, once) {
|
|
37252
|
-
this.fn = fn;
|
|
37253
|
-
this.context = context;
|
|
37254
|
-
this.once = once || false;
|
|
37255
|
-
}
|
|
37256
|
-
|
|
37257
|
-
/**
|
|
37258
|
-
* Add a listener for a given event.
|
|
37259
|
-
*
|
|
37260
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
37261
|
-
* @param {(String|Symbol)} event The event name.
|
|
37262
|
-
* @param {Function} fn The listener function.
|
|
37263
|
-
* @param {*} context The context to invoke the listener with.
|
|
37264
|
-
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
37265
|
-
* @returns {EventEmitter}
|
|
37266
|
-
* @private
|
|
37267
|
-
*/
|
|
37268
|
-
function addListener(emitter, event, fn, context, once) {
|
|
37269
|
-
if (typeof fn !== 'function') {
|
|
37270
|
-
throw new TypeError('The listener must be a function');
|
|
37271
|
-
}
|
|
37272
|
-
|
|
37273
|
-
var listener = new EE(fn, context || emitter, once)
|
|
37274
|
-
, evt = prefix ? prefix + event : event;
|
|
37275
|
-
|
|
37276
|
-
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
37277
|
-
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
37278
|
-
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
37279
|
-
|
|
37280
|
-
return emitter;
|
|
37281
|
-
}
|
|
37282
|
-
|
|
37283
|
-
/**
|
|
37284
|
-
* Clear event by name.
|
|
37285
|
-
*
|
|
37286
|
-
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
37287
|
-
* @param {(String|Symbol)} evt The Event name.
|
|
37288
|
-
* @private
|
|
37289
|
-
*/
|
|
37290
|
-
function clearEvent(emitter, evt) {
|
|
37291
|
-
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
37292
|
-
else delete emitter._events[evt];
|
|
37293
|
-
}
|
|
37294
|
-
|
|
37295
|
-
/**
|
|
37296
|
-
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
37297
|
-
* `EventEmitter` interface.
|
|
37298
|
-
*
|
|
37299
|
-
* @constructor
|
|
37300
|
-
* @public
|
|
37301
|
-
*/
|
|
37302
|
-
function EventEmitter() {
|
|
37303
|
-
this._events = new Events();
|
|
37304
|
-
this._eventsCount = 0;
|
|
37305
|
-
}
|
|
37306
|
-
|
|
37307
|
-
/**
|
|
37308
|
-
* Return an array listing the events for which the emitter has registered
|
|
37309
|
-
* listeners.
|
|
37310
|
-
*
|
|
37311
|
-
* @returns {Array}
|
|
37312
|
-
* @public
|
|
37313
|
-
*/
|
|
37314
|
-
EventEmitter.prototype.eventNames = function eventNames() {
|
|
37315
|
-
var names = []
|
|
37316
|
-
, events
|
|
37317
|
-
, name;
|
|
37318
|
-
|
|
37319
|
-
if (this._eventsCount === 0) return names;
|
|
37320
|
-
|
|
37321
|
-
for (name in (events = this._events)) {
|
|
37322
|
-
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
37323
|
-
}
|
|
37324
|
-
|
|
37325
|
-
if (Object.getOwnPropertySymbols) {
|
|
37326
|
-
return names.concat(Object.getOwnPropertySymbols(events));
|
|
37327
|
-
}
|
|
37328
|
-
|
|
37329
|
-
return names;
|
|
37330
|
-
};
|
|
37331
|
-
|
|
37332
|
-
/**
|
|
37333
|
-
* Return the listeners registered for a given event.
|
|
37334
|
-
*
|
|
37335
|
-
* @param {(String|Symbol)} event The event name.
|
|
37336
|
-
* @returns {Array} The registered listeners.
|
|
37337
|
-
* @public
|
|
37338
|
-
*/
|
|
37339
|
-
EventEmitter.prototype.listeners = function listeners(event) {
|
|
37340
|
-
var evt = prefix ? prefix + event : event
|
|
37341
|
-
, handlers = this._events[evt];
|
|
37342
|
-
|
|
37343
|
-
if (!handlers) return [];
|
|
37344
|
-
if (handlers.fn) return [handlers.fn];
|
|
37345
|
-
|
|
37346
|
-
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
37347
|
-
ee[i] = handlers[i].fn;
|
|
37348
|
-
}
|
|
37349
|
-
|
|
37350
|
-
return ee;
|
|
37351
|
-
};
|
|
37352
|
-
|
|
37353
|
-
/**
|
|
37354
|
-
* Return the number of listeners listening to a given event.
|
|
37355
|
-
*
|
|
37356
|
-
* @param {(String|Symbol)} event The event name.
|
|
37357
|
-
* @returns {Number} The number of listeners.
|
|
37358
|
-
* @public
|
|
37359
|
-
*/
|
|
37360
|
-
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
37361
|
-
var evt = prefix ? prefix + event : event
|
|
37362
|
-
, listeners = this._events[evt];
|
|
37363
|
-
|
|
37364
|
-
if (!listeners) return 0;
|
|
37365
|
-
if (listeners.fn) return 1;
|
|
37366
|
-
return listeners.length;
|
|
37367
|
-
};
|
|
37368
|
-
|
|
37369
|
-
/**
|
|
37370
|
-
* Calls each of the listeners registered for a given event.
|
|
37371
|
-
*
|
|
37372
|
-
* @param {(String|Symbol)} event The event name.
|
|
37373
|
-
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
37374
|
-
* @public
|
|
37375
|
-
*/
|
|
37376
|
-
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
37377
|
-
var evt = prefix ? prefix + event : event;
|
|
37378
|
-
|
|
37379
|
-
if (!this._events[evt]) return false;
|
|
37380
|
-
|
|
37381
|
-
var listeners = this._events[evt]
|
|
37382
|
-
, len = arguments.length
|
|
37383
|
-
, args
|
|
37384
|
-
, i;
|
|
37385
|
-
|
|
37386
|
-
if (listeners.fn) {
|
|
37387
|
-
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
37388
|
-
|
|
37389
|
-
switch (len) {
|
|
37390
|
-
case 1: return listeners.fn.call(listeners.context), true;
|
|
37391
|
-
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
37392
|
-
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
37393
|
-
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
37394
|
-
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
37395
|
-
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
37396
|
-
}
|
|
37397
|
-
|
|
37398
|
-
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
37399
|
-
args[i - 1] = arguments[i];
|
|
37400
|
-
}
|
|
37401
|
-
|
|
37402
|
-
listeners.fn.apply(listeners.context, args);
|
|
37403
|
-
} else {
|
|
37404
|
-
var length = listeners.length
|
|
37405
|
-
, j;
|
|
37406
|
-
|
|
37407
|
-
for (i = 0; i < length; i++) {
|
|
37408
|
-
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
37409
|
-
|
|
37410
|
-
switch (len) {
|
|
37411
|
-
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
37412
|
-
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
37413
|
-
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
37414
|
-
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
37415
|
-
default:
|
|
37416
|
-
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
37417
|
-
args[j - 1] = arguments[j];
|
|
37418
|
-
}
|
|
37419
|
-
|
|
37420
|
-
listeners[i].fn.apply(listeners[i].context, args);
|
|
37421
|
-
}
|
|
37422
|
-
}
|
|
37423
|
-
}
|
|
37424
|
-
|
|
37425
|
-
return true;
|
|
37426
|
-
};
|
|
37427
|
-
|
|
37428
|
-
/**
|
|
37429
|
-
* Add a listener for a given event.
|
|
37430
|
-
*
|
|
37431
|
-
* @param {(String|Symbol)} event The event name.
|
|
37432
|
-
* @param {Function} fn The listener function.
|
|
37433
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
37434
|
-
* @returns {EventEmitter} `this`.
|
|
37435
|
-
* @public
|
|
37436
|
-
*/
|
|
37437
|
-
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
37438
|
-
return addListener(this, event, fn, context, false);
|
|
37439
|
-
};
|
|
37440
|
-
|
|
37441
|
-
/**
|
|
37442
|
-
* Add a one-time listener for a given event.
|
|
37443
|
-
*
|
|
37444
|
-
* @param {(String|Symbol)} event The event name.
|
|
37445
|
-
* @param {Function} fn The listener function.
|
|
37446
|
-
* @param {*} [context=this] The context to invoke the listener with.
|
|
37447
|
-
* @returns {EventEmitter} `this`.
|
|
37448
|
-
* @public
|
|
37449
|
-
*/
|
|
37450
|
-
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
37451
|
-
return addListener(this, event, fn, context, true);
|
|
37452
|
-
};
|
|
37453
|
-
|
|
37454
|
-
/**
|
|
37455
|
-
* Remove the listeners of a given event.
|
|
37456
|
-
*
|
|
37457
|
-
* @param {(String|Symbol)} event The event name.
|
|
37458
|
-
* @param {Function} fn Only remove the listeners that match this function.
|
|
37459
|
-
* @param {*} context Only remove the listeners that have this context.
|
|
37460
|
-
* @param {Boolean} once Only remove one-time listeners.
|
|
37461
|
-
* @returns {EventEmitter} `this`.
|
|
37462
|
-
* @public
|
|
37463
|
-
*/
|
|
37464
|
-
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
37465
|
-
var evt = prefix ? prefix + event : event;
|
|
37466
|
-
|
|
37467
|
-
if (!this._events[evt]) return this;
|
|
37468
|
-
if (!fn) {
|
|
37469
|
-
clearEvent(this, evt);
|
|
37470
|
-
return this;
|
|
37471
|
-
}
|
|
37472
|
-
|
|
37473
|
-
var listeners = this._events[evt];
|
|
37474
|
-
|
|
37475
|
-
if (listeners.fn) {
|
|
37476
|
-
if (
|
|
37477
|
-
listeners.fn === fn &&
|
|
37478
|
-
(!once || listeners.once) &&
|
|
37479
|
-
(!context || listeners.context === context)
|
|
37480
|
-
) {
|
|
37481
|
-
clearEvent(this, evt);
|
|
37482
|
-
}
|
|
37483
|
-
} else {
|
|
37484
|
-
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
37485
|
-
if (
|
|
37486
|
-
listeners[i].fn !== fn ||
|
|
37487
|
-
(once && !listeners[i].once) ||
|
|
37488
|
-
(context && listeners[i].context !== context)
|
|
37489
|
-
) {
|
|
37490
|
-
events.push(listeners[i]);
|
|
37491
|
-
}
|
|
37492
|
-
}
|
|
37493
|
-
|
|
37494
|
-
//
|
|
37495
|
-
// Reset the array, or remove it completely if we have no more listeners.
|
|
37496
|
-
//
|
|
37497
|
-
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
37498
|
-
else clearEvent(this, evt);
|
|
37499
|
-
}
|
|
37500
|
-
|
|
37501
|
-
return this;
|
|
37502
|
-
};
|
|
37503
|
-
|
|
37504
|
-
/**
|
|
37505
|
-
* Remove all listeners, or those of the specified event.
|
|
37506
|
-
*
|
|
37507
|
-
* @param {(String|Symbol)} [event] The event name.
|
|
37508
|
-
* @returns {EventEmitter} `this`.
|
|
37509
|
-
* @public
|
|
37510
|
-
*/
|
|
37511
|
-
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
37512
|
-
var evt;
|
|
37513
|
-
|
|
37514
|
-
if (event) {
|
|
37515
|
-
evt = prefix ? prefix + event : event;
|
|
37516
|
-
if (this._events[evt]) clearEvent(this, evt);
|
|
37517
|
-
} else {
|
|
37518
|
-
this._events = new Events();
|
|
37519
|
-
this._eventsCount = 0;
|
|
37520
|
-
}
|
|
37521
|
-
|
|
37522
|
-
return this;
|
|
37523
|
-
};
|
|
37524
|
-
|
|
37525
|
-
//
|
|
37526
|
-
// Alias methods names because people roll like that.
|
|
37527
|
-
//
|
|
37528
|
-
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
37529
|
-
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
37530
|
-
|
|
37531
|
-
//
|
|
37532
|
-
// Expose the prefix.
|
|
37533
|
-
//
|
|
37534
|
-
EventEmitter.prefixed = prefix;
|
|
37535
|
-
|
|
37536
|
-
//
|
|
37537
|
-
// Allow `EventEmitter` to be imported as module namespace.
|
|
37538
|
-
//
|
|
37539
|
-
EventEmitter.EventEmitter = EventEmitter;
|
|
37540
|
-
|
|
37541
|
-
//
|
|
37542
|
-
// Expose the module.
|
|
37543
|
-
//
|
|
37544
|
-
if (true) {
|
|
37545
|
-
module.exports = EventEmitter;
|
|
37546
|
-
}
|
|
37547
|
-
|
|
37548
|
-
|
|
37549
37256
|
/***/ }),
|
|
37550
37257
|
|
|
37551
37258
|
/***/ 42868:
|
|
@@ -49442,6 +49149,7 @@ function runMigrations(db) {
|
|
|
49442
49149
|
ensureCredentialsTable(db);
|
|
49443
49150
|
ensureCredentialsLabelAndDefaultColumns(db);
|
|
49444
49151
|
ensureModelConfigCredentialIdColumn(db);
|
|
49152
|
+
ensureModelConfigEnabledColumn(db);
|
|
49445
49153
|
ensureAgentConfigsToolCredentialsColumn(db);
|
|
49446
49154
|
seedAgentConfigs(db);
|
|
49447
49155
|
backfillDeveloperInteractiveTerminalTools(db);
|
|
@@ -49606,6 +49314,11 @@ function ensureThreadChannelSummariesTable(db) {
|
|
|
49606
49314
|
if (!cols.some((column)=>column.name === "summary_before_seq")) {
|
|
49607
49315
|
db.exec("ALTER TABLE thread_channel_summaries ADD COLUMN summary_before_seq INTEGER");
|
|
49608
49316
|
}
|
|
49317
|
+
// Stored topic segments (JSON array) so the next compaction can merge new
|
|
49318
|
+
// activity into them instead of re-summarising the channel from scratch.
|
|
49319
|
+
if (!cols.some((column)=>column.name === "topics")) {
|
|
49320
|
+
db.exec("ALTER TABLE thread_channel_summaries ADD COLUMN topics TEXT");
|
|
49321
|
+
}
|
|
49609
49322
|
}
|
|
49610
49323
|
// ADR-0041. Immutable per-assistant-turn snapshot of LLM usage. Written once
|
|
49611
49324
|
// alongside addMessage(...,"assistant",...) and never updated, so the
|
|
@@ -50428,6 +50141,14 @@ function ensureModelConfigCredentialIdColumn(db) {
|
|
|
50428
50141
|
db.exec("ALTER TABLE model_configs ADD COLUMN credential_id TEXT");
|
|
50429
50142
|
}
|
|
50430
50143
|
}
|
|
50144
|
+
// ADR-0102: disabled model configs stay saved but are hidden from model
|
|
50145
|
+
// selection, routing, and default fallback. Existing rows default to enabled.
|
|
50146
|
+
function ensureModelConfigEnabledColumn(db) {
|
|
50147
|
+
const cols = db.prepare("PRAGMA table_info(model_configs)").all();
|
|
50148
|
+
if (!cols.some((c)=>c.name === "enabled")) {
|
|
50149
|
+
db.exec("ALTER TABLE model_configs ADD COLUMN enabled INTEGER NOT NULL DEFAULT 1");
|
|
50150
|
+
}
|
|
50151
|
+
}
|
|
50431
50152
|
// Idempotent backfill: for each model_config still carrying an inline
|
|
50432
50153
|
// `api_key` (and no `credential_id` yet), create a credential row and
|
|
50433
50154
|
// link by id. Strips the api_key / base_url / extra_headers fields from
|
|
@@ -97262,9 +96983,8 @@ const geminiProvider = {
|
|
|
97262
96983
|
};
|
|
97263
96984
|
|
|
97264
96985
|
;// ./lib/providers/github-copilot-auth.ts
|
|
97265
|
-
// GitHub Copilot device-flow login.
|
|
97266
|
-
//
|
|
97267
|
-
// Copilot session token and gets rate-limited on the Models REST API).
|
|
96986
|
+
// GitHub Copilot device-flow login. The legacy PAT path depended on GitHub
|
|
96987
|
+
// Models, which has been retired; use this flow for Copilot Chat access.
|
|
97268
96988
|
//
|
|
97269
96989
|
// Flow (RFC 8628):
|
|
97270
96990
|
// 1. POST github.com/login/device/code with the VS Code Copilot client_id.
|
|
@@ -97437,17 +97157,17 @@ function pickGitHubCompatOptions(params) {
|
|
|
97437
97157
|
return out;
|
|
97438
97158
|
}
|
|
97439
97159
|
const tokenCache = new Map();
|
|
97440
|
-
function
|
|
97441
|
-
return token.startsWith("ghp_") || token.startsWith("github_pat_")
|
|
97160
|
+
function isGitHubPat(token) {
|
|
97161
|
+
return token.startsWith("ghp_") || token.startsWith("github_pat_");
|
|
97442
97162
|
}
|
|
97443
|
-
async function
|
|
97444
|
-
if (!
|
|
97445
|
-
const cached = tokenCache.get(
|
|
97163
|
+
async function exchangeCopilotSessionToken(githubToken) {
|
|
97164
|
+
if (!githubToken) throw new Error("GitHub Copilot: no API key configured for token exchange.");
|
|
97165
|
+
const cached = tokenCache.get(githubToken);
|
|
97446
97166
|
if (cached && cached.expiresAt - Date.now() > 60000) return cached.token;
|
|
97447
|
-
tokenCache.delete(
|
|
97167
|
+
tokenCache.delete(githubToken);
|
|
97448
97168
|
const res = await fetch("https://api.github.com/copilot_internal/v2/token", {
|
|
97449
97169
|
headers: {
|
|
97450
|
-
Authorization: `token ${
|
|
97170
|
+
Authorization: `token ${githubToken}`,
|
|
97451
97171
|
"User-Agent": "Jarela/1.0"
|
|
97452
97172
|
},
|
|
97453
97173
|
signal: AbortSignal.timeout(30000)
|
|
@@ -97455,17 +97175,17 @@ async function getCopilotToken(pat) {
|
|
|
97455
97175
|
if (!res.ok) {
|
|
97456
97176
|
const body = await error_readErrorBody(res);
|
|
97457
97177
|
if (res.status === 401) {
|
|
97458
|
-
throw new Error(`GitHub Copilot: token exchange failed (401). ` + `
|
|
97178
|
+
throw new Error(`GitHub Copilot: token exchange failed (401). ` + `Check that this GitHub account has an active Copilot subscription and the credential is valid. ` + `Details: ${body}`);
|
|
97459
97179
|
}
|
|
97460
97180
|
if (res.status === 404) {
|
|
97461
|
-
throw new Error("GitHub Copilot
|
|
97181
|
+
throw new Error("GitHub Copilot could not exchange this credential for a session token. " + "Use the in-app device-flow sign-in or set params.copilot_session_token.");
|
|
97462
97182
|
}
|
|
97463
97183
|
throw new Error(`GitHub Copilot: token exchange failed (${res.status}): ${body}`);
|
|
97464
97184
|
}
|
|
97465
97185
|
const json = await res.json();
|
|
97466
97186
|
if (!json.token) throw new Error("GitHub Copilot: token exchange returned no token");
|
|
97467
97187
|
const expiresAt = json.expires_at ? new Date(json.expires_at).getTime() : Date.now() + 28 * 60000;
|
|
97468
|
-
tokenCache.set(
|
|
97188
|
+
tokenCache.set(githubToken, {
|
|
97469
97189
|
token: json.token,
|
|
97470
97190
|
expiresAt
|
|
97471
97191
|
});
|
|
@@ -97496,7 +97216,6 @@ async function resolveCopilotAuth(params) {
|
|
|
97496
97216
|
const explicitSessionToken = params.copilot_session_token?.trim();
|
|
97497
97217
|
if (explicitSessionToken && explicitSessionToken.length > 0) {
|
|
97498
97218
|
return {
|
|
97499
|
-
kind: "copilot-api",
|
|
97500
97219
|
baseURL: params.base_url ?? "https://api.githubcopilot.com",
|
|
97501
97220
|
apiKey: explicitSessionToken,
|
|
97502
97221
|
headers: {
|
|
@@ -97506,9 +97225,8 @@ async function resolveCopilotAuth(params) {
|
|
|
97506
97225
|
}
|
|
97507
97226
|
const oauthToken = getStoredOAuthToken();
|
|
97508
97227
|
if (oauthToken) {
|
|
97509
|
-
const token = await
|
|
97228
|
+
const token = await exchangeCopilotSessionToken(oauthToken);
|
|
97510
97229
|
return {
|
|
97511
|
-
kind: "copilot-api",
|
|
97512
97230
|
baseURL: params.base_url ?? "https://api.githubcopilot.com",
|
|
97513
97231
|
apiKey: token,
|
|
97514
97232
|
headers: {
|
|
@@ -97516,23 +97234,14 @@ async function resolveCopilotAuth(params) {
|
|
|
97516
97234
|
}
|
|
97517
97235
|
};
|
|
97518
97236
|
}
|
|
97519
|
-
if (apiKey &&
|
|
97520
|
-
|
|
97521
|
-
kind: "models-rest",
|
|
97522
|
-
baseURL: params.base_url ?? "https://models.github.ai/inference",
|
|
97523
|
-
apiKey,
|
|
97524
|
-
headers: {
|
|
97525
|
-
Accept: "application/vnd.github+json",
|
|
97526
|
-
"X-GitHub-Api-Version": "2026-03-10"
|
|
97527
|
-
}
|
|
97528
|
-
};
|
|
97237
|
+
if (apiKey && isGitHubPat(apiKey)) {
|
|
97238
|
+
throw new Error("GitHub Copilot: this provider's GitHub PAT route used GitHub Models, which has been retired. " + "Use the in-app device-flow sign-in or set copilot_session_token.");
|
|
97529
97239
|
}
|
|
97530
97240
|
if (!apiKey) {
|
|
97531
97241
|
throw new Error("GitHub Copilot: not signed in. Use the in-app device-flow login, or set api_key / copilot_session_token.");
|
|
97532
97242
|
}
|
|
97533
|
-
const token = await
|
|
97243
|
+
const token = await exchangeCopilotSessionToken(apiKey);
|
|
97534
97244
|
return {
|
|
97535
|
-
kind: "copilot-api",
|
|
97536
97245
|
baseURL: params.base_url ?? "https://api.githubcopilot.com",
|
|
97537
97246
|
apiKey: token,
|
|
97538
97247
|
headers: {
|
|
@@ -97543,14 +97252,9 @@ async function resolveCopilotAuth(params) {
|
|
|
97543
97252
|
// Anthropic SDK client pointed at Copilot's native `/v1/messages` endpoint.
|
|
97544
97253
|
// Copilot accepts the Anthropic request shape (including `cache_control`
|
|
97545
97254
|
// ephemeral breakpoints) for Claude-family models when called with a
|
|
97546
|
-
// session token.
|
|
97547
|
-
// this endpoint, so we surface a clear error there instead of silently
|
|
97548
|
-
// downgrading to a path that strips the cache markers.
|
|
97255
|
+
// Copilot session token.
|
|
97549
97256
|
async function resolvedAnthropicClient(params) {
|
|
97550
97257
|
const auth = await resolveCopilotAuth(params);
|
|
97551
|
-
if (auth.kind !== "copilot-api") {
|
|
97552
|
-
throw new Error("GitHub Copilot: Claude models require a Copilot session token (OAuth or copilot_session_token). " + "Personal Access Tokens route to GitHub Models REST, which does not expose the native Messages API.");
|
|
97553
|
-
}
|
|
97554
97258
|
return new Anthropic({
|
|
97555
97259
|
// The SDK requires an apiKey field; we authenticate via authToken
|
|
97556
97260
|
// (Authorization: Bearer ...) per Copilot's contract. The empty
|
|
@@ -98499,6 +98203,7 @@ const ENV_DEFAULTS = {
|
|
|
98499
98203
|
streamParseTripwire: 6,
|
|
98500
98204
|
recallBudgetMs: 1500,
|
|
98501
98205
|
warmSummaryBudgetMs: 5000,
|
|
98206
|
+
compactionTimeoutMs: 10 * 60000,
|
|
98502
98207
|
maxThreadMessages: 1000,
|
|
98503
98208
|
maxSessionArchives: 50,
|
|
98504
98209
|
// tools
|
|
@@ -98704,6 +98409,17 @@ const ENV_SCHEMA = [
|
|
|
98704
98409
|
agentWritable: false,
|
|
98705
98410
|
min: 60000
|
|
98706
98411
|
},
|
|
98412
|
+
{
|
|
98413
|
+
name: "JARELA_COMPACTION_TIMEOUT_MS",
|
|
98414
|
+
type: "int",
|
|
98415
|
+
default: ENV_DEFAULTS.compactionTimeoutMs,
|
|
98416
|
+
description: "Deadline for one warm-context compaction of a thread; a late result is discarded and the thread is released.",
|
|
98417
|
+
category: "agent",
|
|
98418
|
+
tier: "B",
|
|
98419
|
+
requiresRestart: false,
|
|
98420
|
+
agentWritable: false,
|
|
98421
|
+
min: 30000
|
|
98422
|
+
},
|
|
98707
98423
|
{
|
|
98708
98424
|
name: "JARELA_RUN_REGISTRY_TTL_MS",
|
|
98709
98425
|
type: "int",
|
|
@@ -99352,6 +99068,7 @@ function getConfig() {
|
|
|
99352
99068
|
streamParseTripwire: parsePositiveInt(env.JARELA_STREAM_PARSE_TRIPWIRE, ENV_DEFAULTS.streamParseTripwire),
|
|
99353
99069
|
recallBudgetMs: parseNonNegativeInt(env.JARELA_RECALL_BUDGET_MS, ENV_DEFAULTS.recallBudgetMs),
|
|
99354
99070
|
warmSummaryBudgetMs: parseNonNegativeInt(env.JARELA_WARM_SUMMARY_BUDGET_MS, ENV_DEFAULTS.warmSummaryBudgetMs),
|
|
99071
|
+
compactionTimeoutMs: parsePositiveInt(env.JARELA_COMPACTION_TIMEOUT_MS, ENV_DEFAULTS.compactionTimeoutMs),
|
|
99355
99072
|
maxThreadMessages: parsePositiveInt(env.JARELA_MAX_THREAD_MESSAGES, ENV_DEFAULTS.maxThreadMessages),
|
|
99356
99073
|
maxSessionArchives: parsePositiveInt(env.JARELA_MAX_SESSION_ARCHIVES, ENV_DEFAULTS.maxSessionArchives),
|
|
99357
99074
|
// tools
|
|
@@ -102982,6 +102699,14 @@ const model_config_now = ()=>new Date().toISOString();
|
|
|
102982
102699
|
function withModelConfigMutation(name, operation) {
|
|
102983
102700
|
return withKeyedMutation(`model-config:${name}`, operation);
|
|
102984
102701
|
}
|
|
102702
|
+
class ModelConfigStateError extends Error {
|
|
102703
|
+
constructor(message, status){
|
|
102704
|
+
super(message), this.status = status;
|
|
102705
|
+
}
|
|
102706
|
+
}
|
|
102707
|
+
function isModelConfigEnabled(cfg) {
|
|
102708
|
+
return !!cfg && cfg.enabled !== 0;
|
|
102709
|
+
}
|
|
102985
102710
|
// `params` holds the provider API key alongside hyperparameters and is
|
|
102986
102711
|
// stored encrypted at rest (ADR-0005). Decrypt before returning rows.
|
|
102987
102712
|
function model_config_decryptRow(row) {
|
|
@@ -102994,18 +102719,74 @@ function listModelConfigs() {
|
|
|
102994
102719
|
const rows = db_getDb().prepare("SELECT * FROM model_configs ORDER BY is_default DESC, name ASC").all();
|
|
102995
102720
|
return rows.map(model_config_decryptRow);
|
|
102996
102721
|
}
|
|
102722
|
+
/** Model configs that may be offered for selection or routing. */ function listEnabledModelConfigs() {
|
|
102723
|
+
return listModelConfigs().filter(isModelConfigEnabled);
|
|
102724
|
+
}
|
|
102997
102725
|
function getModelConfig(name) {
|
|
102998
102726
|
const row = db_getDb().prepare("SELECT * FROM model_configs WHERE name=?").get(name) ?? null;
|
|
102999
102727
|
return row ? model_config_decryptRow(row) : null;
|
|
103000
102728
|
}
|
|
103001
102729
|
function getDefaultModelConfig() {
|
|
103002
102730
|
const db = db_getDb();
|
|
103003
|
-
const row = db.prepare("SELECT * FROM model_configs WHERE is_default=1 LIMIT 1").get() ?? null;
|
|
102731
|
+
const row = db.prepare("SELECT * FROM model_configs WHERE is_default=1 AND enabled=1 LIMIT 1").get() ?? null;
|
|
103004
102732
|
if (row) return model_config_decryptRow(row);
|
|
103005
|
-
const fallback = db.prepare("SELECT * FROM model_configs ORDER BY name ASC LIMIT 1").get() ?? null;
|
|
102733
|
+
const fallback = db.prepare("SELECT * FROM model_configs WHERE enabled=1 ORDER BY name ASC LIMIT 1").get() ?? null;
|
|
103006
102734
|
return fallback ? model_config_decryptRow(fallback) : null;
|
|
103007
102735
|
}
|
|
103008
|
-
|
|
102736
|
+
/**
|
|
102737
|
+
* Resolve the config a run should use: the named config when it exists and is
|
|
102738
|
+
* enabled, otherwise the workspace default. A disabled assignment therefore
|
|
102739
|
+
* falls back without being cleared, so re-enabling restores it.
|
|
102740
|
+
*/ function resolveRunnableModelConfig(name) {
|
|
102741
|
+
const named = name ? getModelConfig(name) : null;
|
|
102742
|
+
if (named && isModelConfigEnabled(named)) return named;
|
|
102743
|
+
return getDefaultModelConfig();
|
|
102744
|
+
}
|
|
102745
|
+
/** Atomically make `name` the only default model config. */ function setDefaultModelConfig(name) {
|
|
102746
|
+
return withDbTransaction(()=>{
|
|
102747
|
+
const db = getDb();
|
|
102748
|
+
const target = getModelConfig(name);
|
|
102749
|
+
if (!target) throw new ModelConfigStateError(`Model config "${name}" not found`, 404);
|
|
102750
|
+
if (!isModelConfigEnabled(target)) {
|
|
102751
|
+
throw new ModelConfigStateError(`Model config "${name}" is disabled; enable it before making it the default`, 409);
|
|
102752
|
+
}
|
|
102753
|
+
const t = model_config_now();
|
|
102754
|
+
db.prepare("UPDATE model_configs SET is_default=0, updated_at=? WHERE is_default=1 AND name<>?").run(t, name);
|
|
102755
|
+
db.prepare("UPDATE model_configs SET is_default=1, updated_at=? WHERE name=?").run(t, name);
|
|
102756
|
+
return getModelConfig(name);
|
|
102757
|
+
});
|
|
102758
|
+
}
|
|
102759
|
+
/**
|
|
102760
|
+
* Enable or disable a model config. Disabling the default promotes the
|
|
102761
|
+
* alphabetically-first other enabled config in the same transaction, and the
|
|
102762
|
+
* last enabled config cannot be disabled so runs always have a model.
|
|
102763
|
+
*/ function setModelConfigEnabled(name, enabled) {
|
|
102764
|
+
return withDbTransaction(()=>{
|
|
102765
|
+
const db = getDb();
|
|
102766
|
+
const target = getModelConfig(name);
|
|
102767
|
+
if (!target) throw new ModelConfigStateError(`Model config "${name}" not found`, 404);
|
|
102768
|
+
if (isModelConfigEnabled(target) === enabled) return target;
|
|
102769
|
+
const t = model_config_now();
|
|
102770
|
+
if (enabled) {
|
|
102771
|
+
db.prepare("UPDATE model_configs SET enabled=1, updated_at=? WHERE name=?").run(t, name);
|
|
102772
|
+
return getModelConfig(name);
|
|
102773
|
+
}
|
|
102774
|
+
const next = db.prepare("SELECT name FROM model_configs WHERE enabled=1 AND name<>? ORDER BY name ASC LIMIT 1").get(name);
|
|
102775
|
+
if (!next?.name) {
|
|
102776
|
+
throw new ModelConfigStateError("At least one model config must stay enabled", 409);
|
|
102777
|
+
}
|
|
102778
|
+
db.prepare("UPDATE model_configs SET enabled=0, is_default=0, updated_at=? WHERE name=?").run(t, name);
|
|
102779
|
+
if (target.is_default === 1) {
|
|
102780
|
+
db.prepare("UPDATE model_configs SET is_default=1, updated_at=? WHERE name=?").run(t, next.name);
|
|
102781
|
+
}
|
|
102782
|
+
return getModelConfig(name);
|
|
102783
|
+
});
|
|
102784
|
+
}
|
|
102785
|
+
/**
|
|
102786
|
+
* Insert or update a model config. `is_default` undefined keeps the current
|
|
102787
|
+
* flag (false for new rows); true atomically clears every other default and
|
|
102788
|
+
* re-enables the row, because the default must always be selectable.
|
|
102789
|
+
*/ function upsertModelConfig(name, provider, model_id, params, is_default, credential_id = null) {
|
|
103009
102790
|
return withDbTransaction(()=>{
|
|
103010
102791
|
const t = model_config_now();
|
|
103011
102792
|
const existing = getModelConfig(name);
|
|
@@ -103021,9 +102802,11 @@ function upsertModelConfig(name, provider, model_id, params, is_default, credent
|
|
|
103021
102802
|
...decodeInlineParams(existing),
|
|
103022
102803
|
...params
|
|
103023
102804
|
};
|
|
102805
|
+
const finalDefault = is_default ?? existing?.is_default === 1;
|
|
102806
|
+
const finalEnabled = finalDefault || !existing || isModelConfigEnabled(existing);
|
|
103024
102807
|
const db = getDb();
|
|
103025
|
-
if (
|
|
103026
|
-
db.prepare("INSERT OR REPLACE INTO model_configs (name,provider,model_id,params,is_default,credential_id,created_at,updated_at) VALUES (
|
|
102808
|
+
if (finalDefault) db.prepare("UPDATE model_configs SET is_default=0 WHERE name<>?").run(name);
|
|
102809
|
+
db.prepare("INSERT OR REPLACE INTO model_configs (name,provider,model_id,params,is_default,enabled,credential_id,created_at,updated_at) VALUES (?,?,?,?,?,?,?,?,?)").run(name, provider, model_id, encrypt(JSON.stringify(mergedParams)), finalDefault ? 1 : 0, finalEnabled ? 1 : 0, finalCredId, created_at, t);
|
|
103027
102810
|
return getModelConfig(name);
|
|
103028
102811
|
});
|
|
103029
102812
|
}
|
|
@@ -103036,10 +102819,10 @@ function deleteModelConfig(name) {
|
|
|
103036
102819
|
// Automatically reset any agent pointing to this deleted model config to NULL (automatic / default model)
|
|
103037
102820
|
db.prepare("UPDATE agent_configs SET model_config_name = NULL WHERE model_config_name = ?").run(name);
|
|
103038
102821
|
// Avoid the "no default" state: if the deleted row was the default and any
|
|
103039
|
-
// other rows remain, promote the alphabetically-first
|
|
102822
|
+
// other enabled rows remain, promote the alphabetically-first one so
|
|
103040
102823
|
// agents that fall back to the default keep working.
|
|
103041
102824
|
if (wasDefault) {
|
|
103042
|
-
const next = db.prepare("SELECT name FROM model_configs ORDER BY name ASC LIMIT 1").get();
|
|
102825
|
+
const next = db.prepare("SELECT name FROM model_configs WHERE enabled=1 ORDER BY name ASC LIMIT 1").get();
|
|
103043
102826
|
if (next?.name) db.prepare("UPDATE model_configs SET is_default=1 WHERE name=?").run(next.name);
|
|
103044
102827
|
}
|
|
103045
102828
|
return true;
|
|
@@ -105446,14 +105229,14 @@ const integrations_INTEGRATIONS = {
|
|
|
105446
105229
|
"github-copilot": {
|
|
105447
105230
|
label: "GitHub Copilot",
|
|
105448
105231
|
category: "llm",
|
|
105449
|
-
description: "Routes chat-completion requests through your Copilot subscription.
|
|
105232
|
+
description: "Routes chat-completion requests through your Copilot subscription. Use the device-flow " + "sign-in in the Models panel; legacy GitHub PAT authentication is no longer supported.",
|
|
105450
105233
|
fields: [
|
|
105451
105234
|
{
|
|
105452
105235
|
key: "api_key",
|
|
105453
|
-
label: "GitHub PAT",
|
|
105454
|
-
placeholder: "
|
|
105236
|
+
label: "Legacy GitHub PAT (unsupported)",
|
|
105237
|
+
placeholder: "Use Models panel sign-in",
|
|
105455
105238
|
secret: true,
|
|
105456
|
-
required:
|
|
105239
|
+
required: false
|
|
105457
105240
|
}
|
|
105458
105241
|
]
|
|
105459
105242
|
},
|
|
@@ -105723,6 +105506,7 @@ function saveIntegration(name, incoming) {
|
|
|
105723
105506
|
if (f.required && !v.trim()) return {
|
|
105724
105507
|
error: `"${f.key}" cannot be empty`
|
|
105725
105508
|
};
|
|
105509
|
+
if (!v.trim()) continue;
|
|
105726
105510
|
merged[f.key] = v;
|
|
105727
105511
|
if (existing[f.key] !== v) touched.push(f.key);
|
|
105728
105512
|
}
|
|
@@ -107804,57 +107588,6 @@ function interceptionPrefixFromParamType(paramType) {
|
|
|
107804
107588
|
|
|
107805
107589
|
/***/ }),
|
|
107806
107590
|
|
|
107807
|
-
/***/ 60190:
|
|
107808
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
107809
|
-
|
|
107810
|
-
"use strict";
|
|
107811
|
-
/**
|
|
107812
|
-
* Percent-encode every character other than horizontal tab and printable ASCII
|
|
107813
|
-
* so a value can be safely serialized into an HTTP header.
|
|
107814
|
-
*
|
|
107815
|
-
* Node's `validateHeaderValue` and `fetch`'s ByteString conversion accept
|
|
107816
|
-
* different character ranges. Restricting values to `\t\x20-\x7e` produces a
|
|
107817
|
-
* conservative representation that both can serialize. Characters outside a
|
|
107818
|
-
* transport's accepted range (Hebrew, Arabic, Chinese, emoji, …) would
|
|
107819
|
-
* otherwise throw `ERR_INVALID_CHAR` or a `TypeError`, which crashes ISR or
|
|
107820
|
-
* fails a cache read on every affected request.
|
|
107821
|
-
*
|
|
107822
|
-
* Cache tags are encoded at the public boundaries — tag construction
|
|
107823
|
-
* (`getImplicitTags`, `validateTags`) and invalidation input
|
|
107824
|
-
* (`revalidatePath`, `revalidateTag`, `updateTag`) — so storage, comparison,
|
|
107825
|
-
* and the wire all see the same canonical form.
|
|
107826
|
-
*
|
|
107827
|
-
* The class is narrower than either transport accepts. Everything inside it
|
|
107828
|
-
* passes through byte-for-byte, including `,`, `/`, `%`, `[`, `]`, `_`, `-` and
|
|
107829
|
-
* `\t`, which preserves the comma-separated header format and the
|
|
107830
|
-
* dynamic-segment markers in derived tags (`_N_T_/[slug]/page`).
|
|
107831
|
-
*
|
|
107832
|
-
* Properties:
|
|
107833
|
-
* - Fast-path: input that already fits the class is returned unchanged. This
|
|
107834
|
-
* makes the encoder idempotent on already-encoded `%xx` sequences.
|
|
107835
|
-
* - Matches *runs* of out-of-class code units so surrogate pairs (e.g. an
|
|
107836
|
-
* emoji) are handed to `encodeURIComponent` as a complete code point — a
|
|
107837
|
-
* per-code-unit regex would split the pair and throw `URIError`.
|
|
107838
|
-
*/
|
|
107839
|
-
Object.defineProperty(exports, "__esModule", ({
|
|
107840
|
-
value: true
|
|
107841
|
-
}));
|
|
107842
|
-
Object.defineProperty(exports, "encodeHeaderSafe", ({
|
|
107843
|
-
enumerable: true,
|
|
107844
|
-
get: function() {
|
|
107845
|
-
return encodeHeaderSafe;
|
|
107846
|
-
}
|
|
107847
|
-
}));
|
|
107848
|
-
const OUT_OF_CLASS_CHAR = /[^\t\x20-\x7e]/;
|
|
107849
|
-
const OUT_OF_CLASS_RUN = /[^\t\x20-\x7e]+/g;
|
|
107850
|
-
function encodeHeaderSafe(value) {
|
|
107851
|
-
return OUT_OF_CLASS_CHAR.test(value) ? value.replace(OUT_OF_CLASS_RUN, (run)=>encodeURIComponent(run)) : value;
|
|
107852
|
-
}
|
|
107853
|
-
|
|
107854
|
-
//# sourceMappingURL=encode-header-safe.js.map
|
|
107855
|
-
|
|
107856
|
-
/***/ }),
|
|
107857
|
-
|
|
107858
107591
|
/***/ 61081:
|
|
107859
107592
|
/***/ ((module) => {
|
|
107860
107593
|
|
|
@@ -109672,6 +109405,350 @@ function getRelativeURL(url, base) {
|
|
|
109672
109405
|
} //# sourceMappingURL=relativize-url.js.map
|
|
109673
109406
|
|
|
109674
109407
|
|
|
109408
|
+
/***/ }),
|
|
109409
|
+
|
|
109410
|
+
/***/ 65232:
|
|
109411
|
+
/***/ ((module) => {
|
|
109412
|
+
|
|
109413
|
+
"use strict";
|
|
109414
|
+
|
|
109415
|
+
|
|
109416
|
+
var has = Object.prototype.hasOwnProperty
|
|
109417
|
+
, prefix = '~';
|
|
109418
|
+
|
|
109419
|
+
/**
|
|
109420
|
+
* Constructor to create a storage for our `EE` objects.
|
|
109421
|
+
* An `Events` instance is a plain object whose properties are event names.
|
|
109422
|
+
*
|
|
109423
|
+
* @constructor
|
|
109424
|
+
* @private
|
|
109425
|
+
*/
|
|
109426
|
+
function Events() {}
|
|
109427
|
+
|
|
109428
|
+
//
|
|
109429
|
+
// We try to not inherit from `Object.prototype`. In some engines creating an
|
|
109430
|
+
// instance in this way is faster than calling `Object.create(null)` directly.
|
|
109431
|
+
// If `Object.create(null)` is not supported we prefix the event names with a
|
|
109432
|
+
// character to make sure that the built-in object properties are not
|
|
109433
|
+
// overridden or used as an attack vector.
|
|
109434
|
+
//
|
|
109435
|
+
if (Object.create) {
|
|
109436
|
+
Events.prototype = Object.create(null);
|
|
109437
|
+
|
|
109438
|
+
//
|
|
109439
|
+
// This hack is needed because the `__proto__` property is still inherited in
|
|
109440
|
+
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
|
|
109441
|
+
//
|
|
109442
|
+
if (!new Events().__proto__) prefix = false;
|
|
109443
|
+
}
|
|
109444
|
+
|
|
109445
|
+
/**
|
|
109446
|
+
* Representation of a single event listener.
|
|
109447
|
+
*
|
|
109448
|
+
* @param {Function} fn The listener function.
|
|
109449
|
+
* @param {*} context The context to invoke the listener with.
|
|
109450
|
+
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
|
|
109451
|
+
* @constructor
|
|
109452
|
+
* @private
|
|
109453
|
+
*/
|
|
109454
|
+
function EE(fn, context, once) {
|
|
109455
|
+
this.fn = fn;
|
|
109456
|
+
this.context = context;
|
|
109457
|
+
this.once = once || false;
|
|
109458
|
+
}
|
|
109459
|
+
|
|
109460
|
+
/**
|
|
109461
|
+
* Add a listener for a given event.
|
|
109462
|
+
*
|
|
109463
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
109464
|
+
* @param {(String|Symbol)} event The event name.
|
|
109465
|
+
* @param {Function} fn The listener function.
|
|
109466
|
+
* @param {*} context The context to invoke the listener with.
|
|
109467
|
+
* @param {Boolean} once Specify if the listener is a one-time listener.
|
|
109468
|
+
* @returns {EventEmitter}
|
|
109469
|
+
* @private
|
|
109470
|
+
*/
|
|
109471
|
+
function addListener(emitter, event, fn, context, once) {
|
|
109472
|
+
if (typeof fn !== 'function') {
|
|
109473
|
+
throw new TypeError('The listener must be a function');
|
|
109474
|
+
}
|
|
109475
|
+
|
|
109476
|
+
var listener = new EE(fn, context || emitter, once)
|
|
109477
|
+
, evt = prefix ? prefix + event : event;
|
|
109478
|
+
|
|
109479
|
+
if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
|
|
109480
|
+
else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
|
|
109481
|
+
else emitter._events[evt] = [emitter._events[evt], listener];
|
|
109482
|
+
|
|
109483
|
+
return emitter;
|
|
109484
|
+
}
|
|
109485
|
+
|
|
109486
|
+
/**
|
|
109487
|
+
* Clear event by name.
|
|
109488
|
+
*
|
|
109489
|
+
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
|
|
109490
|
+
* @param {(String|Symbol)} evt The Event name.
|
|
109491
|
+
* @private
|
|
109492
|
+
*/
|
|
109493
|
+
function clearEvent(emitter, evt) {
|
|
109494
|
+
if (--emitter._eventsCount === 0) emitter._events = new Events();
|
|
109495
|
+
else delete emitter._events[evt];
|
|
109496
|
+
}
|
|
109497
|
+
|
|
109498
|
+
/**
|
|
109499
|
+
* Minimal `EventEmitter` interface that is molded against the Node.js
|
|
109500
|
+
* `EventEmitter` interface.
|
|
109501
|
+
*
|
|
109502
|
+
* @constructor
|
|
109503
|
+
* @public
|
|
109504
|
+
*/
|
|
109505
|
+
function EventEmitter() {
|
|
109506
|
+
this._events = new Events();
|
|
109507
|
+
this._eventsCount = 0;
|
|
109508
|
+
}
|
|
109509
|
+
|
|
109510
|
+
/**
|
|
109511
|
+
* Return an array listing the events for which the emitter has registered
|
|
109512
|
+
* listeners.
|
|
109513
|
+
*
|
|
109514
|
+
* @returns {Array}
|
|
109515
|
+
* @public
|
|
109516
|
+
*/
|
|
109517
|
+
EventEmitter.prototype.eventNames = function eventNames() {
|
|
109518
|
+
var names = []
|
|
109519
|
+
, events
|
|
109520
|
+
, name;
|
|
109521
|
+
|
|
109522
|
+
if (this._eventsCount === 0) return names;
|
|
109523
|
+
|
|
109524
|
+
for (name in (events = this._events)) {
|
|
109525
|
+
if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
|
|
109526
|
+
}
|
|
109527
|
+
|
|
109528
|
+
if (Object.getOwnPropertySymbols) {
|
|
109529
|
+
return names.concat(Object.getOwnPropertySymbols(events));
|
|
109530
|
+
}
|
|
109531
|
+
|
|
109532
|
+
return names;
|
|
109533
|
+
};
|
|
109534
|
+
|
|
109535
|
+
/**
|
|
109536
|
+
* Return the listeners registered for a given event.
|
|
109537
|
+
*
|
|
109538
|
+
* @param {(String|Symbol)} event The event name.
|
|
109539
|
+
* @returns {Array} The registered listeners.
|
|
109540
|
+
* @public
|
|
109541
|
+
*/
|
|
109542
|
+
EventEmitter.prototype.listeners = function listeners(event) {
|
|
109543
|
+
var evt = prefix ? prefix + event : event
|
|
109544
|
+
, handlers = this._events[evt];
|
|
109545
|
+
|
|
109546
|
+
if (!handlers) return [];
|
|
109547
|
+
if (handlers.fn) return [handlers.fn];
|
|
109548
|
+
|
|
109549
|
+
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
|
|
109550
|
+
ee[i] = handlers[i].fn;
|
|
109551
|
+
}
|
|
109552
|
+
|
|
109553
|
+
return ee;
|
|
109554
|
+
};
|
|
109555
|
+
|
|
109556
|
+
/**
|
|
109557
|
+
* Return the number of listeners listening to a given event.
|
|
109558
|
+
*
|
|
109559
|
+
* @param {(String|Symbol)} event The event name.
|
|
109560
|
+
* @returns {Number} The number of listeners.
|
|
109561
|
+
* @public
|
|
109562
|
+
*/
|
|
109563
|
+
EventEmitter.prototype.listenerCount = function listenerCount(event) {
|
|
109564
|
+
var evt = prefix ? prefix + event : event
|
|
109565
|
+
, listeners = this._events[evt];
|
|
109566
|
+
|
|
109567
|
+
if (!listeners) return 0;
|
|
109568
|
+
if (listeners.fn) return 1;
|
|
109569
|
+
return listeners.length;
|
|
109570
|
+
};
|
|
109571
|
+
|
|
109572
|
+
/**
|
|
109573
|
+
* Calls each of the listeners registered for a given event.
|
|
109574
|
+
*
|
|
109575
|
+
* @param {(String|Symbol)} event The event name.
|
|
109576
|
+
* @returns {Boolean} `true` if the event had listeners, else `false`.
|
|
109577
|
+
* @public
|
|
109578
|
+
*/
|
|
109579
|
+
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
|
|
109580
|
+
var evt = prefix ? prefix + event : event;
|
|
109581
|
+
|
|
109582
|
+
if (!this._events[evt]) return false;
|
|
109583
|
+
|
|
109584
|
+
var listeners = this._events[evt]
|
|
109585
|
+
, len = arguments.length
|
|
109586
|
+
, args
|
|
109587
|
+
, i;
|
|
109588
|
+
|
|
109589
|
+
if (listeners.fn) {
|
|
109590
|
+
if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
|
|
109591
|
+
|
|
109592
|
+
switch (len) {
|
|
109593
|
+
case 1: return listeners.fn.call(listeners.context), true;
|
|
109594
|
+
case 2: return listeners.fn.call(listeners.context, a1), true;
|
|
109595
|
+
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
|
|
109596
|
+
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
|
|
109597
|
+
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
|
|
109598
|
+
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
|
|
109599
|
+
}
|
|
109600
|
+
|
|
109601
|
+
for (i = 1, args = new Array(len -1); i < len; i++) {
|
|
109602
|
+
args[i - 1] = arguments[i];
|
|
109603
|
+
}
|
|
109604
|
+
|
|
109605
|
+
listeners.fn.apply(listeners.context, args);
|
|
109606
|
+
} else {
|
|
109607
|
+
var length = listeners.length
|
|
109608
|
+
, j;
|
|
109609
|
+
|
|
109610
|
+
for (i = 0; i < length; i++) {
|
|
109611
|
+
if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
|
|
109612
|
+
|
|
109613
|
+
switch (len) {
|
|
109614
|
+
case 1: listeners[i].fn.call(listeners[i].context); break;
|
|
109615
|
+
case 2: listeners[i].fn.call(listeners[i].context, a1); break;
|
|
109616
|
+
case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
|
|
109617
|
+
case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
|
|
109618
|
+
default:
|
|
109619
|
+
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
|
|
109620
|
+
args[j - 1] = arguments[j];
|
|
109621
|
+
}
|
|
109622
|
+
|
|
109623
|
+
listeners[i].fn.apply(listeners[i].context, args);
|
|
109624
|
+
}
|
|
109625
|
+
}
|
|
109626
|
+
}
|
|
109627
|
+
|
|
109628
|
+
return true;
|
|
109629
|
+
};
|
|
109630
|
+
|
|
109631
|
+
/**
|
|
109632
|
+
* Add a listener for a given event.
|
|
109633
|
+
*
|
|
109634
|
+
* @param {(String|Symbol)} event The event name.
|
|
109635
|
+
* @param {Function} fn The listener function.
|
|
109636
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
109637
|
+
* @returns {EventEmitter} `this`.
|
|
109638
|
+
* @public
|
|
109639
|
+
*/
|
|
109640
|
+
EventEmitter.prototype.on = function on(event, fn, context) {
|
|
109641
|
+
return addListener(this, event, fn, context, false);
|
|
109642
|
+
};
|
|
109643
|
+
|
|
109644
|
+
/**
|
|
109645
|
+
* Add a one-time listener for a given event.
|
|
109646
|
+
*
|
|
109647
|
+
* @param {(String|Symbol)} event The event name.
|
|
109648
|
+
* @param {Function} fn The listener function.
|
|
109649
|
+
* @param {*} [context=this] The context to invoke the listener with.
|
|
109650
|
+
* @returns {EventEmitter} `this`.
|
|
109651
|
+
* @public
|
|
109652
|
+
*/
|
|
109653
|
+
EventEmitter.prototype.once = function once(event, fn, context) {
|
|
109654
|
+
return addListener(this, event, fn, context, true);
|
|
109655
|
+
};
|
|
109656
|
+
|
|
109657
|
+
/**
|
|
109658
|
+
* Remove the listeners of a given event.
|
|
109659
|
+
*
|
|
109660
|
+
* @param {(String|Symbol)} event The event name.
|
|
109661
|
+
* @param {Function} fn Only remove the listeners that match this function.
|
|
109662
|
+
* @param {*} context Only remove the listeners that have this context.
|
|
109663
|
+
* @param {Boolean} once Only remove one-time listeners.
|
|
109664
|
+
* @returns {EventEmitter} `this`.
|
|
109665
|
+
* @public
|
|
109666
|
+
*/
|
|
109667
|
+
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
|
|
109668
|
+
var evt = prefix ? prefix + event : event;
|
|
109669
|
+
|
|
109670
|
+
if (!this._events[evt]) return this;
|
|
109671
|
+
if (!fn) {
|
|
109672
|
+
clearEvent(this, evt);
|
|
109673
|
+
return this;
|
|
109674
|
+
}
|
|
109675
|
+
|
|
109676
|
+
var listeners = this._events[evt];
|
|
109677
|
+
|
|
109678
|
+
if (listeners.fn) {
|
|
109679
|
+
if (
|
|
109680
|
+
listeners.fn === fn &&
|
|
109681
|
+
(!once || listeners.once) &&
|
|
109682
|
+
(!context || listeners.context === context)
|
|
109683
|
+
) {
|
|
109684
|
+
clearEvent(this, evt);
|
|
109685
|
+
}
|
|
109686
|
+
} else {
|
|
109687
|
+
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
|
|
109688
|
+
if (
|
|
109689
|
+
listeners[i].fn !== fn ||
|
|
109690
|
+
(once && !listeners[i].once) ||
|
|
109691
|
+
(context && listeners[i].context !== context)
|
|
109692
|
+
) {
|
|
109693
|
+
events.push(listeners[i]);
|
|
109694
|
+
}
|
|
109695
|
+
}
|
|
109696
|
+
|
|
109697
|
+
//
|
|
109698
|
+
// Reset the array, or remove it completely if we have no more listeners.
|
|
109699
|
+
//
|
|
109700
|
+
if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
|
|
109701
|
+
else clearEvent(this, evt);
|
|
109702
|
+
}
|
|
109703
|
+
|
|
109704
|
+
return this;
|
|
109705
|
+
};
|
|
109706
|
+
|
|
109707
|
+
/**
|
|
109708
|
+
* Remove all listeners, or those of the specified event.
|
|
109709
|
+
*
|
|
109710
|
+
* @param {(String|Symbol)} [event] The event name.
|
|
109711
|
+
* @returns {EventEmitter} `this`.
|
|
109712
|
+
* @public
|
|
109713
|
+
*/
|
|
109714
|
+
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
|
|
109715
|
+
var evt;
|
|
109716
|
+
|
|
109717
|
+
if (event) {
|
|
109718
|
+
evt = prefix ? prefix + event : event;
|
|
109719
|
+
if (this._events[evt]) clearEvent(this, evt);
|
|
109720
|
+
} else {
|
|
109721
|
+
this._events = new Events();
|
|
109722
|
+
this._eventsCount = 0;
|
|
109723
|
+
}
|
|
109724
|
+
|
|
109725
|
+
return this;
|
|
109726
|
+
};
|
|
109727
|
+
|
|
109728
|
+
//
|
|
109729
|
+
// Alias methods names because people roll like that.
|
|
109730
|
+
//
|
|
109731
|
+
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
|
|
109732
|
+
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
|
|
109733
|
+
|
|
109734
|
+
//
|
|
109735
|
+
// Expose the prefix.
|
|
109736
|
+
//
|
|
109737
|
+
EventEmitter.prefixed = prefix;
|
|
109738
|
+
|
|
109739
|
+
//
|
|
109740
|
+
// Allow `EventEmitter` to be imported as module namespace.
|
|
109741
|
+
//
|
|
109742
|
+
EventEmitter.EventEmitter = EventEmitter;
|
|
109743
|
+
|
|
109744
|
+
//
|
|
109745
|
+
// Expose the module.
|
|
109746
|
+
//
|
|
109747
|
+
if (true) {
|
|
109748
|
+
module.exports = EventEmitter;
|
|
109749
|
+
}
|
|
109750
|
+
|
|
109751
|
+
|
|
109675
109752
|
/***/ }),
|
|
109676
109753
|
|
|
109677
109754
|
/***/ 65621:
|
|
@@ -109707,7 +109784,7 @@ const readEnv = (env) => {
|
|
|
109707
109784
|
"use strict";
|
|
109708
109785
|
|
|
109709
109786
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
109710
|
-
const EventEmitter = __webpack_require__(
|
|
109787
|
+
const EventEmitter = __webpack_require__(65232);
|
|
109711
109788
|
const p_timeout_1 = __webpack_require__(36288);
|
|
109712
109789
|
const priority_queue_1 = __webpack_require__(69833);
|
|
109713
109790
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|