@circuitwall/jarela 2.2.1 → 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 +6 -5
- 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 +143 -143
- package/.next/standalone/.next/server/app/api/v1/models/route.js +543 -543
- 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 +44 -44
- 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 +1243 -854
- 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 +6 -5
- package/.next/standalone/.next/server/chunks/{424.js → 1388.js} +335 -986
- 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 +28 -28
- 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 +1 -1
- 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} +8 -3
- package/.next/standalone/.next/server/chunks/4433.js +146 -146
- package/.next/standalone/.next/server/chunks/4508.js +1 -1
- package/.next/standalone/.next/server/chunks/4588.js +1 -0
- package/.next/standalone/.next/server/chunks/46.js +5 -0
- package/.next/standalone/.next/server/chunks/466.js +12 -0
- 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 +2 -2
- 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} +33173 -31461
- package/.next/standalone/.next/server/chunks/9237.js +396 -396
- package/.next/standalone/.next/server/chunks/{9640.js → 9304.js} +1628 -570
- 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 +415 -397
- 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-a340fb0a345382a4.js → 1395-e4a99912b8f83044.js} +13 -1
- 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-7017f07f8a7a083c.js → page-213a623b37226452.js} +1041 -652
- 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 +25 -0
- package/api/client.ts +9 -0
- package/api/types.ts +29 -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/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/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/ui/BootScreen.tsx +17 -0
- package/components/ui/WorkflowChecklist.tsx +71 -33
- 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/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 +86 -1
- 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 +219 -5
- package/lib/agents/warm-summary-background.ts +325 -142
- 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 +5 -0
- package/lib/env/config.ts +2 -0
- package/lib/env/schema.ts +12 -0
- 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/providers/external.ts +0 -2
- package/lib/skills/builtins/memory-organization/SKILL.md +16 -0
- 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/{NUrC9xax1sp1Q70nlFqS6 → bMRK5y3ruT7c3WtBfCQOG}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{NUrC9xax1sp1Q70nlFqS6 → bMRK5y3ruT7c3WtBfCQOG}/_ssgManifest.js +0 -0
|
@@ -1,594 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.id = 5936;
|
|
3
|
-
exports.ids = [5936];
|
|
4
|
-
exports.modules = {
|
|
5
|
-
|
|
6
|
-
/***/ 95936:
|
|
7
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
// EXPORTS
|
|
11
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
12
|
-
QO: () => (/* binding */ getVersionAdoptionState),
|
|
13
|
-
EG: () => (/* binding */ recordVersionAdoptionWorkflowProgress),
|
|
14
|
-
$n: () => (/* binding */ updateVersionAdoptionState)
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
// EXTERNAL MODULE: external "node:child_process"
|
|
18
|
-
var external_node_child_process_ = __webpack_require__(31421);
|
|
19
|
-
// EXTERNAL MODULE: ./lib/stores/memory.ts
|
|
20
|
-
var memory = __webpack_require__(80956);
|
|
21
|
-
// EXTERNAL MODULE: ./lib/stores/agent-configs.ts
|
|
22
|
-
var agent_configs = __webpack_require__(41720);
|
|
23
|
-
// EXTERNAL MODULE: ./lib/stores/threads.ts
|
|
24
|
-
var threads = __webpack_require__(83042);
|
|
25
|
-
// EXTERNAL MODULE: external "node:fs"
|
|
26
|
-
var external_node_fs_ = __webpack_require__(73024);
|
|
27
|
-
// EXTERNAL MODULE: external "node:path"
|
|
28
|
-
var external_node_path_ = __webpack_require__(76760);
|
|
29
|
-
;// ./lib/lifecycle/version.ts
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
function getCurrentVersion() {
|
|
33
|
-
try {
|
|
34
|
-
const raw = (0,external_node_fs_.readFileSync)((0,external_node_path_.join)(process.cwd(), "package.json"), "utf8");
|
|
35
|
-
return JSON.parse(raw).version ?? "0.0.0";
|
|
36
|
-
} catch {
|
|
37
|
-
return "0.0.0";
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
;// ./lib/stores/workflow-progress.ts
|
|
42
|
-
function shouldPreserveCompleted(current, next) {
|
|
43
|
-
return current === "done" && (next === "pending" || next === "checking");
|
|
44
|
-
}
|
|
45
|
-
function startWorkflow(state, phase) {
|
|
46
|
-
return {
|
|
47
|
-
...state,
|
|
48
|
-
phase
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
function updateWorkflowItem(state, itemId, status, validationEvidence) {
|
|
52
|
-
let found = false;
|
|
53
|
-
const checklist = state.checklist.map((item)=>{
|
|
54
|
-
if (item.id !== itemId) return item;
|
|
55
|
-
found = true;
|
|
56
|
-
if (status === "done" && !validationEvidence?.trim()) {
|
|
57
|
-
throw new Error("Completing a workflow item requires observed validation evidence");
|
|
58
|
-
}
|
|
59
|
-
if (shouldPreserveCompleted(item.status, status)) return item;
|
|
60
|
-
return {
|
|
61
|
-
...item,
|
|
62
|
-
status,
|
|
63
|
-
...validationEvidence ? {
|
|
64
|
-
validation_evidence: validationEvidence
|
|
65
|
-
} : {}
|
|
66
|
-
};
|
|
67
|
-
});
|
|
68
|
-
if (!found) throw new Error(`Workflow item "${itemId}" not found`);
|
|
69
|
-
return {
|
|
70
|
-
...state,
|
|
71
|
-
checklist
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
function completeWorkflow(state, phase, validationEvidence) {
|
|
75
|
-
if (!validationEvidence.trim()) {
|
|
76
|
-
throw new Error("Completing a workflow requires observed validation evidence");
|
|
77
|
-
}
|
|
78
|
-
if (state.checklist.some((item)=>item.status === "done" && !item.validation_evidence?.trim())) {
|
|
79
|
-
throw new Error("A workflow cannot complete with items marked done without validation evidence");
|
|
80
|
-
}
|
|
81
|
-
return {
|
|
82
|
-
...state,
|
|
83
|
-
phase,
|
|
84
|
-
checklist: state.checklist.map((item)=>item.status === "pending" || item.status === "checking" || item.status === "needs_attention" ? {
|
|
85
|
-
...item,
|
|
86
|
-
status: "done",
|
|
87
|
-
validation_evidence: validationEvidence
|
|
88
|
-
} : item)
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
function mergeWorkflowProgress(state, update) {
|
|
92
|
-
let next = state;
|
|
93
|
-
let updatedItemId = null;
|
|
94
|
-
if (Object.prototype.hasOwnProperty.call(update, "phase")) {
|
|
95
|
-
next = {
|
|
96
|
-
...next,
|
|
97
|
-
phase: update.phase ?? null
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
if (update.item_id || update.status) {
|
|
101
|
-
if (!update.item_id || !update.status) {
|
|
102
|
-
throw new Error("Workflow item progress requires both item_id and status");
|
|
103
|
-
}
|
|
104
|
-
next = updateWorkflowItem(next, update.item_id, update.status, update.validation_evidence);
|
|
105
|
-
updatedItemId = update.item_id;
|
|
106
|
-
}
|
|
107
|
-
if (Object.prototype.hasOwnProperty.call(update, "summary")) {
|
|
108
|
-
next = {
|
|
109
|
-
...next,
|
|
110
|
-
summary: update.summary ?? ""
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
if (Object.prototype.hasOwnProperty.call(update, "error")) {
|
|
114
|
-
next = {
|
|
115
|
-
...next,
|
|
116
|
-
error: update.error ?? null
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
return {
|
|
120
|
-
state: next,
|
|
121
|
-
updated_item_id: updatedItemId
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
;// ./lib/stores/version-adoption.ts
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
const NAMESPACE = "app-lifecycle";
|
|
133
|
-
const STATE_KEY = "version_adoption_state";
|
|
134
|
-
const DEFAULT_CHECKLIST = [
|
|
135
|
-
{
|
|
136
|
-
id: "instructions",
|
|
137
|
-
label: "Review instructions and skills",
|
|
138
|
-
input: "Changed instruction, skill, and harness files, plus the current agent behavior they define.",
|
|
139
|
-
output: "Findings and any required instruction or skill updates.",
|
|
140
|
-
validation: "Read each affected file and verify findings against the active prompt/skill loading path.",
|
|
141
|
-
status: "pending",
|
|
142
|
-
reason: "Agent behavior may depend on changed repo instructions, built-in skills, or prompt guidance.",
|
|
143
|
-
affected_files: [],
|
|
144
|
-
action: "read_instructions"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
id: "tools",
|
|
148
|
-
label: "Review tool and permission changes",
|
|
149
|
-
input: "Changed tool implementations, registrations, descriptions, and permission rules.",
|
|
150
|
-
output: "Findings and required tool or permission adoption actions.",
|
|
151
|
-
validation: "Trace affected tools through registration and permission checks; run focused tests when available.",
|
|
152
|
-
status: "pending",
|
|
153
|
-
reason: "Tool descriptions, permissions, or package registrations can change how agents should act.",
|
|
154
|
-
affected_files: [],
|
|
155
|
-
action: "review_tools"
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
id: "scheduled-work",
|
|
159
|
-
label: "Review scheduled tasks and watchers",
|
|
160
|
-
input: "Changed scheduler, watcher, trigger, and long-lived prompt behavior.",
|
|
161
|
-
output: "Findings and required scheduled-work prompt updates.",
|
|
162
|
-
validation: "Inspect affected scheduling paths and run relevant tests; report any unchecked behavior as unknown.",
|
|
163
|
-
status: "pending",
|
|
164
|
-
reason: "Long-lived prompts for scheduled tasks and watchers can become stale after runtime or tool changes.",
|
|
165
|
-
affected_files: [],
|
|
166
|
-
action: "review_schedule"
|
|
167
|
-
}
|
|
168
|
-
];
|
|
169
|
-
const PHASE_1_CHECKLIST = [
|
|
170
|
-
{
|
|
171
|
-
id: "fetch-changes",
|
|
172
|
-
label: "Fetch changes",
|
|
173
|
-
input: "Previously adopted version tag and current repository HEAD.",
|
|
174
|
-
output: "The changed-file list between the baseline and current version.",
|
|
175
|
-
validation: "Use the system-computed git diff result; if no baseline is available, explicitly identify first-adoption status.",
|
|
176
|
-
status: "pending",
|
|
177
|
-
reason: "Compare the current version with the previously adopted version or baseline.",
|
|
178
|
-
affected_files: []
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
id: "build-todo-list",
|
|
182
|
-
label: "Build todo list",
|
|
183
|
-
input: "System-computed changed-file list and classified adoption surfaces.",
|
|
184
|
-
output: "A Phase 2 checklist covering all matched changes and a fallback review for unmatched changes.",
|
|
185
|
-
validation: "Check that every changed path is represented by an adoption item or explicitly covered by the fallback.",
|
|
186
|
-
status: "pending",
|
|
187
|
-
reason: "Turn detected version changes into the concrete Phase 2 adoption checklist.",
|
|
188
|
-
affected_files: []
|
|
189
|
-
}
|
|
190
|
-
];
|
|
191
|
-
function now() {
|
|
192
|
-
return new Date().toISOString();
|
|
193
|
-
}
|
|
194
|
-
function parseStored() {
|
|
195
|
-
const row = (0,memory/* getMemory */.So)(NAMESPACE, STATE_KEY);
|
|
196
|
-
if (!row?.value) return null;
|
|
197
|
-
try {
|
|
198
|
-
const parsed = JSON.parse(row.value);
|
|
199
|
-
if (typeof parsed.current_version !== "string") return null;
|
|
200
|
-
return {
|
|
201
|
-
current_version: parsed.current_version,
|
|
202
|
-
previous_version: typeof parsed.previous_version === "string" ? parsed.previous_version : null,
|
|
203
|
-
is_first_adoption: parsed.is_first_adoption === true,
|
|
204
|
-
status: isStatus(parsed.status) ? parsed.status : "pending",
|
|
205
|
-
phase: isPhase(parsed.phase) ? parsed.phase : null,
|
|
206
|
-
default_agent_id: typeof parsed.default_agent_id === "string" ? parsed.default_agent_id : null,
|
|
207
|
-
default_agent_name: typeof parsed.default_agent_name === "string" ? parsed.default_agent_name : null,
|
|
208
|
-
adoption_thread_id: typeof parsed.adoption_thread_id === "string" ? parsed.adoption_thread_id : null,
|
|
209
|
-
adoption_prompt: typeof parsed.adoption_prompt === "string" ? parsed.adoption_prompt : null,
|
|
210
|
-
started_at: typeof parsed.started_at === "string" ? parsed.started_at : null,
|
|
211
|
-
completed_at: typeof parsed.completed_at === "string" ? parsed.completed_at : null,
|
|
212
|
-
dismissed_at: typeof parsed.dismissed_at === "string" ? parsed.dismissed_at : null,
|
|
213
|
-
summary: typeof parsed.summary === "string" ? parsed.summary : "",
|
|
214
|
-
checklist: Array.isArray(parsed.checklist) ? parsed.checklist.map(normalizeChecklistItem).filter((item)=>item !== null) : [],
|
|
215
|
-
stale_prompt_risks: Array.isArray(parsed.stale_prompt_risks) ? parsed.stale_prompt_risks.filter((item)=>typeof item === "string") : [],
|
|
216
|
-
error: typeof parsed.error === "string" ? parsed.error : null,
|
|
217
|
-
last_adopted_version: typeof parsed.last_adopted_version === "string" ? parsed.last_adopted_version : null
|
|
218
|
-
};
|
|
219
|
-
} catch {
|
|
220
|
-
return null;
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
function isStatus(value) {
|
|
224
|
-
return value === "idle" || value === "pending" || value === "running" || value === "done" || value === "failed" || value === "dismissed" || value === "blocked_no_default_agent";
|
|
225
|
-
}
|
|
226
|
-
function isPhase(value) {
|
|
227
|
-
return value === "impact_radius" || value === "adoption" || value === "complete" || value === null;
|
|
228
|
-
}
|
|
229
|
-
function normalizeChecklistItem(value) {
|
|
230
|
-
if (!value || typeof value !== "object") return null;
|
|
231
|
-
const item = value;
|
|
232
|
-
if (typeof item.id !== "string" || typeof item.label !== "string" || typeof item.reason !== "string") return null;
|
|
233
|
-
const validationEvidence = typeof item.validation_evidence === "string" && item.validation_evidence.trim() ? item.validation_evidence : undefined;
|
|
234
|
-
const storedStatus = isChecklistStatus(item.status) ? item.status : "pending";
|
|
235
|
-
const legacyCompletionNeedsReview = storedStatus === "done" && !validationEvidence;
|
|
236
|
-
return {
|
|
237
|
-
id: item.id,
|
|
238
|
-
label: item.label,
|
|
239
|
-
status: legacyCompletionNeedsReview ? "needs_attention" : storedStatus,
|
|
240
|
-
reason: legacyCompletionNeedsReview ? `${item.reason} Previously stored completion had no validation evidence; review this step again.` : item.reason,
|
|
241
|
-
affected_files: Array.isArray(item.affected_files) ? item.affected_files.filter((file)=>typeof file === "string") : [],
|
|
242
|
-
input: typeof item.input === "string" ? item.input : "Previously stored workflow context and affected files.",
|
|
243
|
-
output: typeof item.output === "string" ? item.output : "Review findings and any required adoption actions.",
|
|
244
|
-
validation: typeof item.validation === "string" ? item.validation : "Verify findings against the affected files; report unavailable evidence instead of inferring.",
|
|
245
|
-
...validationEvidence ? {
|
|
246
|
-
validation_evidence: validationEvidence
|
|
247
|
-
} : {},
|
|
248
|
-
...isVersionAdoptionAction(item.action) ? {
|
|
249
|
-
action: item.action
|
|
250
|
-
} : {}
|
|
251
|
-
};
|
|
252
|
-
}
|
|
253
|
-
function isChecklistStatus(value) {
|
|
254
|
-
return value === "pending" || value === "checking" || value === "done" || value === "needs_attention" || value === "skipped";
|
|
255
|
-
}
|
|
256
|
-
function isVersionAdoptionAction(value) {
|
|
257
|
-
return value === "read_skill" || value === "review_permissions" || value === "review_schedule" || value === "review_watcher" || value === "read_instructions" || value === "review_tools" || value === "review_api" || value === "review_persistence" || value === "review_release";
|
|
258
|
-
}
|
|
259
|
-
function persist(state) {
|
|
260
|
-
(0,memory/* putMemory */.Ri)(NAMESPACE, STATE_KEY, state);
|
|
261
|
-
return publicState(state);
|
|
262
|
-
}
|
|
263
|
-
function publicState(state) {
|
|
264
|
-
const { last_adopted_version: _last, ...visible } = state;
|
|
265
|
-
return visible;
|
|
266
|
-
}
|
|
267
|
-
function changedFiles(previousVersion, currentVersion) {
|
|
268
|
-
if (!previousVersion) return [];
|
|
269
|
-
const tag = `v${previousVersion}`;
|
|
270
|
-
try {
|
|
271
|
-
(0,external_node_child_process_.execFileSync)("git", [
|
|
272
|
-
"rev-parse",
|
|
273
|
-
"--is-inside-work-tree"
|
|
274
|
-
], {
|
|
275
|
-
stdio: "ignore"
|
|
276
|
-
});
|
|
277
|
-
(0,external_node_child_process_.execFileSync)("git", [
|
|
278
|
-
"rev-parse",
|
|
279
|
-
"--verify",
|
|
280
|
-
tag
|
|
281
|
-
], {
|
|
282
|
-
stdio: "ignore"
|
|
283
|
-
});
|
|
284
|
-
const raw = (0,external_node_child_process_.execFileSync)("git", [
|
|
285
|
-
"diff",
|
|
286
|
-
"--name-only",
|
|
287
|
-
"--diff-filter=ACMR",
|
|
288
|
-
`${tag}..HEAD`
|
|
289
|
-
], {
|
|
290
|
-
cwd: process.cwd(),
|
|
291
|
-
encoding: "utf8",
|
|
292
|
-
stdio: [
|
|
293
|
-
"ignore",
|
|
294
|
-
"pipe",
|
|
295
|
-
"ignore"
|
|
296
|
-
]
|
|
297
|
-
});
|
|
298
|
-
void currentVersion;
|
|
299
|
-
return raw.split(/\r?\n/).map((line)=>line.trim()).filter(Boolean).map((file)=>file.replace(/\\/g, "/"));
|
|
300
|
-
} catch {
|
|
301
|
-
return [];
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
function filesMatching(files, patterns) {
|
|
305
|
-
return files.filter((file)=>patterns.some((pattern)=>pattern.test(file)));
|
|
306
|
-
}
|
|
307
|
-
function item(id, label, reason, input, output, validation, files, action) {
|
|
308
|
-
if (files.length === 0) return null;
|
|
309
|
-
return {
|
|
310
|
-
id,
|
|
311
|
-
label,
|
|
312
|
-
input,
|
|
313
|
-
output,
|
|
314
|
-
validation,
|
|
315
|
-
status: "pending",
|
|
316
|
-
reason,
|
|
317
|
-
affected_files: files.slice(0, 12),
|
|
318
|
-
action
|
|
319
|
-
};
|
|
320
|
-
}
|
|
321
|
-
function buildChecklist(previousVersion, currentVersion) {
|
|
322
|
-
if (!previousVersion) {
|
|
323
|
-
return DEFAULT_CHECKLIST.map((entry)=>({
|
|
324
|
-
...entry
|
|
325
|
-
}));
|
|
326
|
-
}
|
|
327
|
-
const files = changedFiles(previousVersion, currentVersion);
|
|
328
|
-
const dynamic = [
|
|
329
|
-
item("permissions", "Review permissions and tool access", "Tool registration, category, package, or permission files changed since the last adopted version.", "Changed tool registration and permission files.", "Validated findings about capability exposure and any required permission changes.", "Inspect each affected file, trace the permission path, and run relevant tool/permission tests.", filesMatching(files, [
|
|
330
|
-
/^lib\/tools\//,
|
|
331
|
-
/^packages\/[^/]+-langchain\//,
|
|
332
|
-
/^lib\/stores\/agent-configs\./,
|
|
333
|
-
/^lib\/stores\/builtin-tools\./
|
|
334
|
-
]), "review_permissions"),
|
|
335
|
-
item("skills-instructions", "Review changed skills and instructions", "Agent instructions, skill files, or harness prompts changed and may affect behavior.", "Changed instruction, skill, and harness files plus their loading paths.", "Validated behavior impact and any required instruction or skill updates.", "Read each affected file and verify changes against the prompt/skill loading path.", filesMatching(files, [
|
|
336
|
-
/^\.github\/skills\//,
|
|
337
|
-
/^\.github\/instructions\//,
|
|
338
|
-
/^\.github\/copilot-instructions\.md$/,
|
|
339
|
-
/^lib\/skills\//,
|
|
340
|
-
/^lib\/agents\/harness\//
|
|
341
|
-
]), "read_skill"),
|
|
342
|
-
item("scheduled-work", "Review scheduled tasks and watchers", "Scheduler, trigger, or watcher behavior changed and long-lived prompts may need review.", "Changed scheduler, trigger, watcher, and long-lived prompt files.", "Validated findings and any required scheduled-work prompt updates.", "Inspect each affected scheduling path and run its focused tests when available.", filesMatching(files, [
|
|
343
|
-
/^lib\/scheduler\//,
|
|
344
|
-
/^lib\/triggers\//,
|
|
345
|
-
/^lib\/tools\/(schedule|watcher)\.ts$/
|
|
346
|
-
]), "review_schedule"),
|
|
347
|
-
item("stale-prompts", "Check stale prompt risks", "Agent prompt assembly or runtime policy changed since the last adopted version.", "Changed prompt assembly, harness, and runtime-policy files.", "Validated stale-prompt risks and specific corrective actions.", "Trace changed prompt code into the assembled prompt and test the affected behavior.", filesMatching(files, [
|
|
348
|
-
/^lib\/agents\//,
|
|
349
|
-
/^lib\/agents\/prepare\/system-prompt\.ts$/
|
|
350
|
-
]), "read_instructions"),
|
|
351
|
-
item("api-persistence", "Review API and persistence contracts", "API, database, or store changes can require migrations, docs, or client updates.", "Changed API schemas, database migrations, stores, and their clients.", "Validated contract impact and any required migration, client, or documentation actions.", "Check schema and migration compatibility, then run focused contract and persistence tests.", filesMatching(files, [
|
|
352
|
-
/^app\/api\//,
|
|
353
|
-
/^api\//,
|
|
354
|
-
/^lib\/api\//,
|
|
355
|
-
/^lib\/db\//,
|
|
356
|
-
/^lib\/stores\//
|
|
357
|
-
]), "review_api"),
|
|
358
|
-
item("release-notes", "Review release notes and package metadata", "Release metadata changed and should describe user-visible behavior.", "Changed changelog, package metadata, and release configuration.", "Validated release notes and package/version metadata.", "Compare release notes with the actual diff and verify package metadata consistency.", filesMatching(files, [
|
|
359
|
-
/^CHANGELOG\.md$/,
|
|
360
|
-
/^package\.json$/,
|
|
361
|
-
/^package-lock\.json$/,
|
|
362
|
-
/^packages\/[^/]+\/package\.json$/,
|
|
363
|
-
/^packages\/[^/]+\/CHANGELOG\.md$/
|
|
364
|
-
]), "review_release")
|
|
365
|
-
].filter((entry)=>entry !== null);
|
|
366
|
-
if (dynamic.length === 0) {
|
|
367
|
-
return [
|
|
368
|
-
{
|
|
369
|
-
id: "version-diff",
|
|
370
|
-
label: "Review version changes",
|
|
371
|
-
input: "System-computed changed-file list and available changelog.",
|
|
372
|
-
output: "Findings for unclassified changes and any required adoption actions.",
|
|
373
|
-
validation: "Compare findings with the available changed-file list and changelog; state explicitly if either is unavailable.",
|
|
374
|
-
status: files.length === 0 ? "skipped" : "pending",
|
|
375
|
-
reason: files.length === 0 ? "No git diff was available for the stored version; use the changelog as the fallback briefing." : "Changed files did not match a known ripple surface; review the changelog for user-visible behavior.",
|
|
376
|
-
affected_files: files.slice(0, 12),
|
|
377
|
-
action: "review_release"
|
|
378
|
-
}
|
|
379
|
-
];
|
|
380
|
-
}
|
|
381
|
-
return dynamic;
|
|
382
|
-
}
|
|
383
|
-
function phase1Checklist() {
|
|
384
|
-
return PHASE_1_CHECKLIST.map((entry)=>({
|
|
385
|
-
...entry
|
|
386
|
-
}));
|
|
387
|
-
}
|
|
388
|
-
// `fetch-changes` never needs an agent tool call: the git diff it reports
|
|
389
|
-
// on already ran synchronously in createState() (via buildChecklist), so
|
|
390
|
-
// the item starts pre-completed with the deterministic result baked into
|
|
391
|
-
// its reason. Only `build-todo-list` is left for the agent to actually do.
|
|
392
|
-
function resolvedPhase1Checklist(adoptionChecklist, isFirst) {
|
|
393
|
-
const [fetchChanges, ...rest] = phase1Checklist();
|
|
394
|
-
const affectedCount = adoptionChecklist.reduce((n, entry)=>n + entry.affected_files.length, 0);
|
|
395
|
-
return [
|
|
396
|
-
{
|
|
397
|
-
...fetchChanges,
|
|
398
|
-
status: "done",
|
|
399
|
-
validation_evidence: isFirst ? "System confirmed that this is the first adoption and no prior baseline exists." : `System computed the changed-file surface against the prior version; ${affectedCount} affected file(s) were counted.`,
|
|
400
|
-
reason: isFirst ? "First adoption — no previously adopted version to diff against." : `Computed deterministically via git diff against the previously adopted version: ${affectedCount} affected file(s) across ${adoptionChecklist.length} area(s).`
|
|
401
|
-
},
|
|
402
|
-
...rest
|
|
403
|
-
];
|
|
404
|
-
}
|
|
405
|
-
function stalePromptRisks(checklist) {
|
|
406
|
-
return checklist.filter((item)=>item.id === "skills-instructions" || item.id === "scheduled-work" || item.id === "stale-prompts" || item.id === "permissions").map((item)=>item.label);
|
|
407
|
-
}
|
|
408
|
-
function buildSummary(state, checklist) {
|
|
409
|
-
if (state.is_first_adoption) {
|
|
410
|
-
return `Current version ${state.current_version} baseline is ready; review current guidance before relying on long-lived prompts.`;
|
|
411
|
-
}
|
|
412
|
-
return `Version ${state.current_version} has ${checklist.length} adoption check${checklist.length === 1 ? "" : "s"} from ${state.previous_version}.`;
|
|
413
|
-
}
|
|
414
|
-
function buildAdoptionPrompt(state) {
|
|
415
|
-
const phaseLabel = state.is_first_adoption ? `current-version baseline ${state.current_version}` : `upgrade from ${state.previous_version} to ${state.current_version}`;
|
|
416
|
-
return [
|
|
417
|
-
`Run Jarela version adoption for ${phaseLabel}.`,
|
|
418
|
-
"",
|
|
419
|
-
"Phase 1 — impact radius analysis:",
|
|
420
|
-
"- The changed-file surface (`fetch-changes`) was already computed deterministically by the system via git diff against the previously adopted version — see each Phase 2 checklist item below with its affected_files. Do not independently fetch or guess at what changed; that item is already marked done in the UI.",
|
|
421
|
-
"- Every checklist item provides its input, expected output, and validation criteria. Work from the stated inputs, validate the output using those criteria, and report observed evidence before marking the item done.",
|
|
422
|
-
"- Prefer executable checks for code-verifiable behavior. If a check cannot run, say why and leave the result unverified or mark the item needs_attention.",
|
|
423
|
-
"- Call `workflow_progress` with `workflow_id: \"version_adoption\"`, `phase: \"impact_radius\"`, `item_id: \"build-todo-list\"`, and `status: \"checking\"`.",
|
|
424
|
-
"- Build the Phase 2 todo list from the adoption checklist below, deciding which items are actionable, skipped, or need attention.",
|
|
425
|
-
"- Then call `workflow_progress` for `item_id: \"build-todo-list\"` with `status: \"done\"` and `validation_evidence` containing the observed coverage check.",
|
|
426
|
-
"",
|
|
427
|
-
"Phase 2 — adoption:",
|
|
428
|
-
"- Start Phase 2 by calling `workflow_progress` with `workflow_id: \"version_adoption\"` and `phase: \"adoption\"`; the UI will swap from the Phase 1 checklist to the generated adoption todo list.",
|
|
429
|
-
"- Before each Phase 2 checklist item, call `workflow_progress` with that `item_id` and `status: \"checking\"`.",
|
|
430
|
-
"- If Phase 1 finds actionable adoption work, complete safe local updates directly when your available tools allow it.",
|
|
431
|
-
"- For risky or external side effects, propose an approval flow instead of acting silently.",
|
|
432
|
-
"- If Phase 1 finds no adoption work, explicitly say that Phase 2 is skipped and why.",
|
|
433
|
-
"- After each Phase 2 item, call `workflow_progress` with `status: \"done\"` and observed `validation_evidence`, or `status: \"skipped\"` / `status: \"needs_attention\"` as appropriate.",
|
|
434
|
-
"- Before your final response, call `workflow_progress` with `workflow_id: \"version_adoption\"`, `phase: \"complete\"`, and a concise `summary`.",
|
|
435
|
-
"",
|
|
436
|
-
"Constraints:",
|
|
437
|
-
"- Do not create external issues, PRs, scheduled tasks, watcher updates, or credential changes unless the user explicitly approves.",
|
|
438
|
-
"- Keep the response concise: what changed, what you checked, what was adopted, what was skipped, and any approval needed.",
|
|
439
|
-
"",
|
|
440
|
-
`Summary: ${state.summary}`,
|
|
441
|
-
"Phase 1 checklist:",
|
|
442
|
-
...PHASE_1_CHECKLIST.map((item)=>`- ${item.id}: ${item.label} — Input: ${item.input} Output: ${item.output} Validation: ${item.validation} Reason: ${item.reason}`),
|
|
443
|
-
"Phase 2 adoption checklist:",
|
|
444
|
-
...buildChecklist(state.previous_version, state.current_version).map((item)=>`- ${item.id}: ${item.label}: Input: ${item.input} Output: ${item.output} Validation: ${item.validation} Reason: ${item.reason}${item.affected_files.length > 0 ? ` Affected files: ${item.affected_files.join(", ")}.` : ""}`),
|
|
445
|
-
state.stale_prompt_risks.length > 0 ? `Stale-prompt risks: ${state.stale_prompt_risks.join(", ")}.` : "Stale-prompt risks: none detected in the checklist."
|
|
446
|
-
].join("\n");
|
|
447
|
-
}
|
|
448
|
-
function createState(currentVersion, previousVersion) {
|
|
449
|
-
const defaultAgent = (0,agent_configs/* getDefaultAgentConfig */.vU)();
|
|
450
|
-
const isFirst = previousVersion === null;
|
|
451
|
-
const adoptionChecklist = buildChecklist(previousVersion, currentVersion);
|
|
452
|
-
const summaryInput = {
|
|
453
|
-
current_version: currentVersion,
|
|
454
|
-
previous_version: previousVersion,
|
|
455
|
-
is_first_adoption: isFirst
|
|
456
|
-
};
|
|
457
|
-
return {
|
|
458
|
-
current_version: currentVersion,
|
|
459
|
-
previous_version: previousVersion,
|
|
460
|
-
is_first_adoption: isFirst,
|
|
461
|
-
status: defaultAgent ? "pending" : "blocked_no_default_agent",
|
|
462
|
-
phase: null,
|
|
463
|
-
default_agent_id: defaultAgent?.id ?? null,
|
|
464
|
-
default_agent_name: defaultAgent?.name ?? null,
|
|
465
|
-
adoption_thread_id: null,
|
|
466
|
-
adoption_prompt: null,
|
|
467
|
-
started_at: null,
|
|
468
|
-
completed_at: null,
|
|
469
|
-
dismissed_at: null,
|
|
470
|
-
checklist: resolvedPhase1Checklist(adoptionChecklist, isFirst),
|
|
471
|
-
stale_prompt_risks: stalePromptRisks(adoptionChecklist),
|
|
472
|
-
summary: buildSummary(summaryInput, adoptionChecklist),
|
|
473
|
-
error: defaultAgent ? null : "No default agent is configured.",
|
|
474
|
-
last_adopted_version: previousVersion
|
|
475
|
-
};
|
|
476
|
-
}
|
|
477
|
-
function getVersionAdoptionState(currentVersion = getCurrentVersion()) {
|
|
478
|
-
const stored = parseStored();
|
|
479
|
-
if (!stored) return persist(createState(currentVersion, null));
|
|
480
|
-
if (stored.current_version === currentVersion) {
|
|
481
|
-
if (stored.status === "blocked_no_default_agent" && (0,agent_configs/* getDefaultAgentConfig */.vU)()) {
|
|
482
|
-
return persist(createState(currentVersion, stored.previous_version));
|
|
483
|
-
}
|
|
484
|
-
return publicState(stored);
|
|
485
|
-
}
|
|
486
|
-
const previousVersion = stored.last_adopted_version ?? stored.current_version;
|
|
487
|
-
return persist(createState(currentVersion, previousVersion));
|
|
488
|
-
}
|
|
489
|
-
function updateVersionAdoptionState(action, currentVersion = getCurrentVersion()) {
|
|
490
|
-
const existing = parseStored();
|
|
491
|
-
const state = existing && existing.current_version === currentVersion ? existing : createState(currentVersion, existing?.last_adopted_version ?? existing?.current_version ?? null);
|
|
492
|
-
const t = now();
|
|
493
|
-
const nextChecklist = state.checklist.map((entry)=>({
|
|
494
|
-
...entry
|
|
495
|
-
}));
|
|
496
|
-
if (action === "start" || action === "retry") {
|
|
497
|
-
if (!state.default_agent_id) {
|
|
498
|
-
return persist({
|
|
499
|
-
...state,
|
|
500
|
-
status: "blocked_no_default_agent",
|
|
501
|
-
phase: null,
|
|
502
|
-
error: "No default agent is configured."
|
|
503
|
-
});
|
|
504
|
-
}
|
|
505
|
-
const thread = (0,threads/* getOrCreateAgentThread */.xH)(state.default_agent_id);
|
|
506
|
-
// fetch-changes is pre-completed at createState() time; mark the next
|
|
507
|
-
// still-open item (normally build-todo-list) as checking instead of
|
|
508
|
-
// hardcoding index 0, which would otherwise clobber that done status.
|
|
509
|
-
const firstOpen = nextChecklist.findIndex((entry)=>entry.status !== "done" && entry.status !== "skipped");
|
|
510
|
-
if (firstOpen !== -1) nextChecklist[firstOpen].status = "checking";
|
|
511
|
-
const running = {
|
|
512
|
-
...state,
|
|
513
|
-
status: "running",
|
|
514
|
-
phase: "impact_radius",
|
|
515
|
-
started_at: state.started_at ?? t,
|
|
516
|
-
completed_at: null,
|
|
517
|
-
dismissed_at: null,
|
|
518
|
-
checklist: nextChecklist,
|
|
519
|
-
adoption_thread_id: thread.thread_id,
|
|
520
|
-
error: null
|
|
521
|
-
};
|
|
522
|
-
return persist({
|
|
523
|
-
...running,
|
|
524
|
-
adoption_prompt: buildAdoptionPrompt(running)
|
|
525
|
-
});
|
|
526
|
-
}
|
|
527
|
-
if (action === "mark_done") {
|
|
528
|
-
const completed = completeWorkflow({
|
|
529
|
-
...state,
|
|
530
|
-
checklist: nextChecklist
|
|
531
|
-
}, "complete", "The user explicitly confirmed completion through the adoption checklist.");
|
|
532
|
-
return persist({
|
|
533
|
-
...completed,
|
|
534
|
-
status: "done",
|
|
535
|
-
completed_at: t,
|
|
536
|
-
dismissed_at: null,
|
|
537
|
-
adoption_prompt: null,
|
|
538
|
-
error: null,
|
|
539
|
-
last_adopted_version: currentVersion
|
|
540
|
-
});
|
|
541
|
-
}
|
|
542
|
-
return persist({
|
|
543
|
-
...state,
|
|
544
|
-
status: "dismissed",
|
|
545
|
-
phase: "complete",
|
|
546
|
-
completed_at: state.completed_at ?? t,
|
|
547
|
-
dismissed_at: t,
|
|
548
|
-
adoption_prompt: null,
|
|
549
|
-
error: null,
|
|
550
|
-
last_adopted_version: currentVersion
|
|
551
|
-
});
|
|
552
|
-
}
|
|
553
|
-
function recordVersionAdoptionWorkflowProgress(update, currentVersion = getCurrentVersion()) {
|
|
554
|
-
const existing = parseStored();
|
|
555
|
-
const state = existing && existing.current_version === currentVersion ? existing : createState(currentVersion, existing?.last_adopted_version ?? existing?.current_version ?? null);
|
|
556
|
-
const enteringAdoption = update.phase === "adoption" && state.phase !== "adoption";
|
|
557
|
-
const baseState = enteringAdoption ? {
|
|
558
|
-
...state,
|
|
559
|
-
phase: "adoption",
|
|
560
|
-
checklist: buildChecklist(state.previous_version, currentVersion)
|
|
561
|
-
} : state;
|
|
562
|
-
const result = mergeWorkflowProgress(baseState, update);
|
|
563
|
-
if (result.state.phase === "complete" && result.state.checklist.some((entry)=>entry.status !== "done" && entry.status !== "skipped" || entry.status === "done" && !entry.validation_evidence)) {
|
|
564
|
-
throw new Error("Version adoption cannot be completed until every checklist item is validated or skipped.");
|
|
565
|
-
}
|
|
566
|
-
const completedPhase1Todo = result.state.phase === "impact_radius" && update.item_id === "build-todo-list" && update.status === "done";
|
|
567
|
-
const progressed = completedPhase1Todo ? {
|
|
568
|
-
...result.state,
|
|
569
|
-
phase: "adoption",
|
|
570
|
-
checklist: buildChecklist(state.previous_version, currentVersion)
|
|
571
|
-
} : result.state;
|
|
572
|
-
const nextStatus = result.state.phase === "complete" ? "done" : state.status === "done" || state.status === "dismissed" ? state.status : "running";
|
|
573
|
-
const next = persist({
|
|
574
|
-
...progressed,
|
|
575
|
-
status: nextStatus,
|
|
576
|
-
started_at: state.started_at ?? now(),
|
|
577
|
-
completed_at: progressed.phase === "complete" ? state.completed_at ?? now() : null,
|
|
578
|
-
dismissed_at: null,
|
|
579
|
-
adoption_prompt: progressed.phase === "complete" ? null : progressed.adoption_prompt,
|
|
580
|
-
error: update.error !== undefined ? update.error : progressed.error,
|
|
581
|
-
last_adopted_version: progressed.phase === "complete" ? currentVersion : state.last_adopted_version
|
|
582
|
-
});
|
|
583
|
-
return {
|
|
584
|
-
state: next,
|
|
585
|
-
updated_item_id: result.updated_item_id
|
|
586
|
-
};
|
|
587
|
-
}
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
/***/ })
|
|
591
|
-
|
|
592
|
-
};
|
|
593
|
-
;
|
|
594
|
-
//# sourceMappingURL=5936.js.map
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([[155,306,369,411,415,703,879,1168,1337,1344,1393,1441,1468,1506,1622,1623,1665,2007,2200,2341,2346,2385,2401,2408,2501,2524,2623,2636,2666,2678,2718,2829,2835,2856,2897,3142,3263,3286,3357,3405,3451,3486,3540,3551,3652,3666,3798,3950,4063,4115,4124,4153,4191,4200,4254,4256,4285,4434,4458,4548,4565,4567,4714,4799,4886,4896,4921,4925,5050,5062,5091,5211,5247,5248,5315,5346,5436,5466,5482,5712,5827,5838,5967,6013,6206,6218,6253,6271,6293,6303,6324,6331,6412,6496,6570,6644,6750,6762,6787,6793,6819,6894,6913,6937,6988,7161,7171,7380,7404,7461,7556,7601,7728,7758,7848,7851,7892,7967,8082,8090,8144,8167,8206,8323,8343,8351,8399,8443,8444,8491,8508,8672,8679,8905,8907,8944,9051,9082,9095,9168,9234,9278,9487,9600,9649,9694,9786,9977],{
|
|
2
|
-
|
|
3
|
-
/***/ 84441:
|
|
4
|
-
/***/ (() => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
/***/ })
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
/******/ __webpack_require__ => { // webpackRuntimeModules
|
|
12
|
-
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
13
|
-
/******/ __webpack_require__.O(0, [8441,5254,7358], () => (__webpack_exec__(84441)));
|
|
14
|
-
/******/ var __webpack_exports__ = __webpack_require__.O();
|
|
15
|
-
/******/ _N_E = __webpack_exports__;
|
|
16
|
-
/******/ }
|
|
17
|
-
]);
|
package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/route-36cb8b428b38b26a.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([[155,306,369,411,415,703,879,1168,1337,1344,1393,1441,1468,1506,1622,1623,1665,2007,2200,2341,2346,2385,2401,2408,2501,2524,2623,2636,2666,2678,2718,2829,2835,2856,2897,3142,3263,3286,3357,3405,3451,3486,3540,3551,3652,3666,3798,3950,4063,4115,4124,4153,4191,4200,4254,4256,4285,4434,4458,4548,4565,4567,4714,4799,4886,4896,4921,4925,5050,5062,5091,5211,5247,5248,5315,5346,5436,5466,5482,5712,5827,5838,5967,6013,6206,6218,6253,6271,6293,6303,6324,6331,6412,6496,6570,6644,6750,6762,6787,6793,6819,6894,6913,6937,6988,7161,7171,7380,7404,7461,7556,7601,7728,7758,7848,7851,7892,7967,8082,8090,8144,8167,8206,8323,8343,8351,8399,8443,8444,8491,8508,8672,8679,8905,8907,8944,9051,9082,9095,9168,9234,9278,9487,9600,9649,9694,9786,9977],{
|
|
2
|
-
|
|
3
|
-
/***/ 84441:
|
|
4
|
-
/***/ (() => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
/***/ })
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
/******/ __webpack_require__ => { // webpackRuntimeModules
|
|
12
|
-
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
13
|
-
/******/ __webpack_require__.O(0, [8441,5254,7358], () => (__webpack_exec__(84441)));
|
|
14
|
-
/******/ var __webpack_exports__ = __webpack_require__.O();
|
|
15
|
-
/******/ _N_E = __webpack_exports__;
|
|
16
|
-
/******/ }
|
|
17
|
-
]);
|
package/.next/standalone/.next/static/chunks/app/api/v1/agents/[id]/thread/route-36cb8b428b38b26a.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([[155,306,369,411,415,703,879,1168,1337,1344,1393,1441,1468,1506,1622,1623,1665,2007,2200,2341,2346,2385,2401,2408,2501,2524,2623,2636,2666,2678,2718,2829,2835,2856,2897,3142,3263,3286,3357,3405,3451,3486,3540,3551,3652,3666,3798,3950,4063,4115,4124,4153,4191,4200,4254,4256,4285,4434,4458,4548,4565,4567,4714,4799,4886,4896,4921,4925,5050,5062,5091,5211,5247,5248,5315,5346,5436,5466,5482,5712,5827,5838,5967,6013,6206,6218,6253,6271,6293,6303,6324,6331,6412,6496,6570,6644,6750,6762,6787,6793,6819,6894,6913,6937,6988,7161,7171,7380,7404,7461,7556,7601,7728,7758,7848,7851,7892,7967,8082,8090,8144,8167,8206,8323,8343,8351,8399,8443,8444,8491,8508,8672,8679,8905,8907,8944,9051,9082,9095,9168,9234,9278,9487,9600,9649,9694,9786,9977],{
|
|
2
|
-
|
|
3
|
-
/***/ 84441:
|
|
4
|
-
/***/ (() => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
/***/ })
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
/******/ __webpack_require__ => { // webpackRuntimeModules
|
|
12
|
-
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
13
|
-
/******/ __webpack_require__.O(0, [8441,5254,7358], () => (__webpack_exec__(84441)));
|
|
14
|
-
/******/ var __webpack_exports__ = __webpack_require__.O();
|
|
15
|
-
/******/ _N_E = __webpack_exports__;
|
|
16
|
-
/******/ }
|
|
17
|
-
]);
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([[155,306,369,411,415,703,879,1168,1337,1344,1393,1441,1468,1506,1622,1623,1665,2007,2200,2341,2346,2385,2401,2408,2501,2524,2623,2636,2666,2678,2718,2829,2835,2856,2897,3142,3263,3286,3357,3405,3451,3486,3540,3551,3652,3666,3798,3950,4063,4115,4124,4153,4191,4200,4254,4256,4285,4434,4458,4548,4565,4567,4714,4799,4886,4896,4921,4925,5050,5062,5091,5211,5247,5248,5315,5346,5436,5466,5482,5712,5827,5838,5967,6013,6206,6218,6253,6271,6293,6303,6324,6331,6412,6496,6570,6644,6750,6762,6787,6793,6819,6894,6913,6937,6988,7161,7171,7380,7404,7461,7556,7601,7728,7758,7848,7851,7892,7967,8082,8090,8144,8167,8206,8323,8343,8351,8399,8443,8444,8491,8508,8672,8679,8905,8907,8944,9051,9082,9095,9168,9234,9278,9487,9600,9649,9694,9786,9977],{
|
|
2
|
-
|
|
3
|
-
/***/ 84441:
|
|
4
|
-
/***/ (() => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
/***/ })
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
/******/ __webpack_require__ => { // webpackRuntimeModules
|
|
12
|
-
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
13
|
-
/******/ __webpack_require__.O(0, [8441,5254,7358], () => (__webpack_exec__(84441)));
|
|
14
|
-
/******/ var __webpack_exports__ = __webpack_require__.O();
|
|
15
|
-
/******/ _N_E = __webpack_exports__;
|
|
16
|
-
/******/ }
|
|
17
|
-
]);
|