groove-dev 0.27.137 → 0.27.138
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/node_modules/@groove-dev/cli/package.json +1 -1
- package/node_modules/@groove-dev/daemon/package.json +1 -1
- package/node_modules/@groove-dev/daemon/src/adaptive.js +26 -16
- package/node_modules/@groove-dev/daemon/src/journalist.js +62 -24
- package/node_modules/@groove-dev/daemon/src/model-lab.js +6 -5
- package/node_modules/@groove-dev/daemon/src/rotator.js +5 -7
- package/{packages/gui/dist/assets/codemirror-DRQdprYi.js → node_modules/@groove-dev/gui/dist/assets/codemirror-BYKpdS2W.js} +1 -1
- package/{packages/gui/dist/assets/index-BrZHF7pK.js → node_modules/@groove-dev/gui/dist/assets/index-DcNgRadn.js} +1764 -1764
- package/node_modules/@groove-dev/gui/dist/assets/index-EY6WfKWH.css +1 -0
- package/node_modules/@groove-dev/gui/dist/index.html +3 -3
- package/node_modules/@groove-dev/gui/package.json +2 -1
- package/node_modules/@groove-dev/gui/src/components/editor/code-editor.jsx +81 -63
- package/node_modules/@groove-dev/gui/src/components/editor/editor-status-bar.jsx +66 -0
- package/node_modules/@groove-dev/gui/src/components/lab/system-prompt-editor.jsx +21 -24
- package/node_modules/@groove-dev/gui/src/stores/groove.js +5 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/README.md +152 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/cjs/index.js +95 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/esm/index.js +84 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-abcdef/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-abyss/README.md +150 -0
- package/node_modules/@uiw/codemirror-theme-abyss/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-abyss/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-abyss/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-abyss/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-abyss/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-abyss/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-abyss/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-abyss/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-abyss/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-abyss/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-abyss/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-abyss/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-abyss/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/README.md +153 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/cjs/index.js +66 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/esm/index.js +55 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-androidstudio/src/index.ts +40 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/cjs/color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/cjs/color.js +32 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/cjs/index.js +106 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/esm/color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/esm/color.js +26 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/esm/index.js +96 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/src/color.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-andromeda/src/index.ts +56 -0
- package/node_modules/@uiw/codemirror-theme-atomone/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-atomone/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-atomone/cjs/index.js +69 -0
- package/node_modules/@uiw/codemirror-theme-atomone/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-atomone/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-atomone/esm/index.js +58 -0
- package/node_modules/@uiw/codemirror-theme-atomone/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-atomone/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-atomone/src/index.ts +48 -0
- package/node_modules/@uiw/codemirror-theme-aura/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-aura/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-aura/cjs/index.js +99 -0
- package/node_modules/@uiw/codemirror-theme-aura/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-aura/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-aura/esm/index.js +89 -0
- package/node_modules/@uiw/codemirror-theme-aura/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-aura/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-aura/src/index.ts +51 -0
- package/node_modules/@uiw/codemirror-theme-basic/README.md +159 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/dark.js +156 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/index.js +27 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/light.js +153 -0
- package/node_modules/@uiw/codemirror-theme-basic/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-basic/dark.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/dark.js +146 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/index.js +2 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/light.js +143 -0
- package/node_modules/@uiw/codemirror-theme-basic/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-basic/light.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-basic/package.json +63 -0
- package/node_modules/@uiw/codemirror-theme-basic/src/dark.ts +76 -0
- package/node_modules/@uiw/codemirror-theme-basic/src/index.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-basic/src/light.ts +81 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/cjs/index.js +77 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/esm/index.js +67 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-bbedit/src/index.ts +44 -0
- package/node_modules/@uiw/codemirror-theme-bespin/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-bespin/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-bespin/cjs/index.js +72 -0
- package/node_modules/@uiw/codemirror-theme-bespin/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-bespin/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-bespin/esm/index.js +61 -0
- package/node_modules/@uiw/codemirror-theme-bespin/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-bespin/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-bespin/src/index.ts +46 -0
- package/node_modules/@uiw/codemirror-theme-console/README.md +160 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/dark.d.ts +4 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/dark.js +36 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/index.js +27 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/light.d.ts +4 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/light.js +36 -0
- package/node_modules/@uiw/codemirror-theme-console/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-console/dark.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/dark.d.ts +4 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/dark.js +26 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/index.js +2 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/light.d.ts +4 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/light.js +26 -0
- package/node_modules/@uiw/codemirror-theme-console/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-console/light.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-console/package.json +62 -0
- package/node_modules/@uiw/codemirror-theme-console/src/dark.ts +27 -0
- package/node_modules/@uiw/codemirror-theme-console/src/index.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-console/src/light.ts +27 -0
- package/node_modules/@uiw/codemirror-theme-copilot/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-copilot/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-copilot/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-copilot/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-copilot/cjs/index.js +106 -0
- package/node_modules/@uiw/codemirror-theme-copilot/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-copilot/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-copilot/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-copilot/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-copilot/esm/index.js +96 -0
- package/node_modules/@uiw/codemirror-theme-copilot/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-copilot/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-copilot/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-copilot/src/index.ts +56 -0
- package/node_modules/@uiw/codemirror-theme-darcula/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-darcula/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-darcula/cjs/index.js +72 -0
- package/node_modules/@uiw/codemirror-theme-darcula/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-darcula/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-darcula/esm/index.js +61 -0
- package/node_modules/@uiw/codemirror-theme-darcula/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-darcula/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-darcula/src/index.ts +46 -0
- package/node_modules/@uiw/codemirror-theme-dracula/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-dracula/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-dracula/cjs/index.js +69 -0
- package/node_modules/@uiw/codemirror-theme-dracula/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-dracula/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-dracula/esm/index.js +58 -0
- package/node_modules/@uiw/codemirror-theme-dracula/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-dracula/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-dracula/src/index.ts +48 -0
- package/node_modules/@uiw/codemirror-theme-duotone/README.md +156 -0
- package/node_modules/@uiw/codemirror-theme-duotone/cjs/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-duotone/cjs/index.js +115 -0
- package/node_modules/@uiw/codemirror-theme-duotone/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-duotone/esm/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-duotone/esm/index.js +102 -0
- package/node_modules/@uiw/codemirror-theme-duotone/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-duotone/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-duotone/src/index.ts +79 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/README.md +145 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/cjs/index.js +78 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/esm/index.js +68 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-eclipse/src/index.ts +44 -0
- package/node_modules/@uiw/codemirror-theme-github/README.md +154 -0
- package/node_modules/@uiw/codemirror-theme-github/cjs/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-github/cjs/index.js +156 -0
- package/node_modules/@uiw/codemirror-theme-github/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-github/esm/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-github/esm/index.js +143 -0
- package/node_modules/@uiw/codemirror-theme-github/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-github/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-github/src/index.ts +86 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/README.md +153 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/cjs/index.d.ts +8 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/cjs/index.js +296 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/esm/index.d.ts +8 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/esm/index.js +283 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-gruvbox-dark/src/index.ts +203 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-kimbie/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-material/README.md +161 -0
- package/node_modules/@uiw/codemirror-theme-material/cjs/index.d.ts +12 -0
- package/node_modules/@uiw/codemirror-theme-material/cjs/index.js +247 -0
- package/node_modules/@uiw/codemirror-theme-material/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-material/esm/index.d.ts +12 -0
- package/node_modules/@uiw/codemirror-theme-material/esm/index.js +235 -0
- package/node_modules/@uiw/codemirror-theme-material/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-material/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-material/src/index.ts +129 -0
- package/node_modules/@uiw/codemirror-theme-monokai/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-monokai/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-monokai/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-monokai/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-monokai/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-monokai/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-monokai/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-monokai/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-monokai/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-monokai/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/package.json +46 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-monokai-dimmed/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/cjs/index.js +83 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/esm/index.js +73 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-noctis-lilac/src/index.ts +49 -0
- package/node_modules/@uiw/codemirror-theme-nord/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-nord/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-nord/cjs/index.js +159 -0
- package/node_modules/@uiw/codemirror-theme-nord/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-nord/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-nord/esm/index.js +149 -0
- package/node_modules/@uiw/codemirror-theme-nord/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-nord/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-nord/src/index.ts +77 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/README.md +147 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/cjs/index.js +69 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/esm/index.js +59 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-okaidia/src/index.ts +41 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/cjs/index.js +104 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/esm/index.js +94 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-quietlight/src/index.ts +53 -0
- package/node_modules/@uiw/codemirror-theme-red/README.md +149 -0
- package/node_modules/@uiw/codemirror-theme-red/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-red/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-red/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-red/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-red/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-red/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-red/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-red/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-red/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-red/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-red/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-red/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-red/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-solarized/README.md +160 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/dark-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/dark-color.js +32 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/dark.js +104 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/index.js +27 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/light-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/light-color.js +32 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/light.js +104 -0
- package/node_modules/@uiw/codemirror-theme-solarized/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-solarized/dark.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/dark-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/dark-color.js +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/dark.js +94 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/index.js +2 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/light-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/light-color.js +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/light.js +94 -0
- package/node_modules/@uiw/codemirror-theme-solarized/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-solarized/light.d.ts +6 -0
- package/node_modules/@uiw/codemirror-theme-solarized/package.json +63 -0
- package/node_modules/@uiw/codemirror-theme-solarized/src/dark-color.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/src/dark.ts +53 -0
- package/node_modules/@uiw/codemirror-theme-solarized/src/index.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-solarized/src/light-color.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-solarized/src/light.ts +53 -0
- package/node_modules/@uiw/codemirror-theme-sublime/README.md +147 -0
- package/node_modules/@uiw/codemirror-theme-sublime/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-sublime/cjs/index.js +73 -0
- package/node_modules/@uiw/codemirror-theme-sublime/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-sublime/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-sublime/esm/index.js +62 -0
- package/node_modules/@uiw/codemirror-theme-sublime/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-sublime/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-sublime/src/index.ts +42 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/cjs/index.js +99 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/esm/index.js +89 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/package.json +50 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night/src/index.ts +51 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/README.md +153 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/cjs/index.js +100 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/esm/index.js +90 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/package.json +51 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-day/src/index.ts +51 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/README.md +153 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/cjs/index.js +100 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/esm/index.js +90 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/package.json +51 -0
- package/node_modules/@uiw/codemirror-theme-tokyo-night-storm/src/index.ts +51 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/README.md +151 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/cjs/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/cjs/color.js +31 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/cjs/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/cjs/index.js +103 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/esm/color.d.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/esm/color.js +25 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/esm/index.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/esm/index.js +93 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/package.json +45 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/src/color.ts +25 -0
- package/node_modules/@uiw/codemirror-theme-tomorrow-night-blue/src/index.ts +52 -0
- package/node_modules/@uiw/codemirror-theme-vscode/README.md +161 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/dark.js +98 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/index.js +27 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/light.js +98 -0
- package/node_modules/@uiw/codemirror-theme-vscode/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/dark.js +85 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/index.js +2 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/light.js +85 -0
- package/node_modules/@uiw/codemirror-theme-vscode/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-vscode/package.json +44 -0
- package/node_modules/@uiw/codemirror-theme-vscode/src/dark.ts +82 -0
- package/node_modules/@uiw/codemirror-theme-vscode/src/index.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-vscode/src/light.ts +82 -0
- package/node_modules/@uiw/codemirror-theme-white/README.md +160 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/dark-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/dark-color.js +32 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/dark.js +110 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/index.js +27 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/light-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/light-color.js +32 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/light.js +110 -0
- package/node_modules/@uiw/codemirror-theme-white/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/dark-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/dark-color.js +26 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/dark.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/dark.js +100 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/index.d.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/index.js +2 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/light-color.d.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/light-color.js +26 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/light.d.ts +5 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/light.js +100 -0
- package/node_modules/@uiw/codemirror-theme-white/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-white/package.json +56 -0
- package/node_modules/@uiw/codemirror-theme-white/src/dark-color.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/src/dark.ts +57 -0
- package/node_modules/@uiw/codemirror-theme-white/src/index.ts +2 -0
- package/node_modules/@uiw/codemirror-theme-white/src/light-color.ts +26 -0
- package/node_modules/@uiw/codemirror-theme-white/src/light.ts +57 -0
- package/node_modules/@uiw/codemirror-theme-xcode/README.md +154 -0
- package/node_modules/@uiw/codemirror-theme-xcode/cjs/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-xcode/cjs/index.js +119 -0
- package/node_modules/@uiw/codemirror-theme-xcode/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-xcode/esm/index.d.ts +9 -0
- package/node_modules/@uiw/codemirror-theme-xcode/esm/index.js +104 -0
- package/node_modules/@uiw/codemirror-theme-xcode/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-theme-xcode/package.json +44 -0
- package/node_modules/@uiw/codemirror-theme-xcode/src/index.ts +75 -0
- package/node_modules/@uiw/codemirror-themes/README.md +391 -0
- package/node_modules/@uiw/codemirror-themes/cjs/index.d.ts +46 -0
- package/node_modules/@uiw/codemirror-themes/cjs/index.js +84 -0
- package/node_modules/@uiw/codemirror-themes/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-themes/esm/index.d.ts +46 -0
- package/node_modules/@uiw/codemirror-themes/esm/index.js +78 -0
- package/node_modules/@uiw/codemirror-themes/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-themes/package.json +56 -0
- package/node_modules/@uiw/codemirror-themes/src/index.tsx +128 -0
- package/node_modules/@uiw/codemirror-themes-all/README.md +406 -0
- package/node_modules/@uiw/codemirror-themes-all/cjs/index.d.ts +35 -0
- package/node_modules/@uiw/codemirror-themes-all/cjs/index.js +390 -0
- package/node_modules/@uiw/codemirror-themes-all/cjs/package.json +1 -0
- package/node_modules/@uiw/codemirror-themes-all/esm/index.d.ts +35 -0
- package/node_modules/@uiw/codemirror-themes-all/esm/index.js +35 -0
- package/node_modules/@uiw/codemirror-themes-all/esm/package.json +1 -0
- package/node_modules/@uiw/codemirror-themes-all/package.json +86 -0
- package/node_modules/@uiw/codemirror-themes-all/src/index.ts +35 -0
- package/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/daemon/package.json +1 -1
- package/packages/daemon/src/adaptive.js +26 -16
- package/packages/daemon/src/journalist.js +62 -24
- package/packages/daemon/src/model-lab.js +6 -5
- package/packages/daemon/src/rotator.js +5 -7
- package/{node_modules/@groove-dev/gui/dist/assets/codemirror-DRQdprYi.js → packages/gui/dist/assets/codemirror-BYKpdS2W.js} +1 -1
- package/{node_modules/@groove-dev/gui/dist/assets/index-BrZHF7pK.js → packages/gui/dist/assets/index-DcNgRadn.js} +1764 -1764
- package/packages/gui/dist/assets/index-EY6WfKWH.css +1 -0
- package/packages/gui/dist/index.html +3 -3
- package/packages/gui/package.json +2 -1
- package/packages/gui/src/components/editor/code-editor.jsx +81 -63
- package/packages/gui/src/components/editor/editor-status-bar.jsx +66 -0
- package/packages/gui/src/components/lab/system-prompt-editor.jsx +21 -24
- package/packages/gui/src/stores/groove.js +5 -0
- package/model-workspace/LAB-ASSISTANT-BUILD-PLAN.md +0 -341
- package/node_modules/@groove-dev/gui/dist/assets/index-DIfiwdKl.css +0 -1
- package/packages/gui/dist/assets/index-DIfiwdKl.css +0 -1
|
@@ -98,15 +98,21 @@ export class AdaptiveThresholds {
|
|
|
98
98
|
return { score, threshold: newThreshold, converged: profile.converged };
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
scoreSession(signals) {
|
|
101
|
+
scoreSession(signals, options = {}) {
|
|
102
102
|
// Score 0-100 based on quality signals.
|
|
103
103
|
// Low score → rotate sooner (threshold decreases)
|
|
104
104
|
// High score → allow more context (threshold increases)
|
|
105
|
+
//
|
|
106
|
+
// Self-managing providers (Claude Code) get reduced penalties because
|
|
107
|
+
// their normal debugging patterns — polling, retrying commands, hitting
|
|
108
|
+
// errors during investigation — look identical to degradation signals
|
|
109
|
+
// but are expected productive behavior.
|
|
110
|
+
const selfManages = options.selfManagesContext ?? false;
|
|
105
111
|
let score = 70; // Baseline: decent session
|
|
106
112
|
|
|
107
|
-
// Error rate:
|
|
113
|
+
// Error rate: -5 per error normally, -2 for self-managing (errors during debugging are expected)
|
|
108
114
|
const errorCount = signals.errorCount || 0;
|
|
109
|
-
score -= errorCount * 5;
|
|
115
|
+
score -= errorCount * (selfManages ? 2 : 5);
|
|
110
116
|
|
|
111
117
|
// Repetitions: 3+ Write/Edit to the same file in a sliding window
|
|
112
118
|
const repetitions = signals.repetitions || 0;
|
|
@@ -121,7 +127,7 @@ export class AdaptiveThresholds {
|
|
|
121
127
|
const toolFailures = signals.toolFailures || 0;
|
|
122
128
|
if (toolCalls > 0) {
|
|
123
129
|
const successRate = (toolCalls - toolFailures) / toolCalls;
|
|
124
|
-
score += Math.round((successRate - 0.8) * 20);
|
|
130
|
+
score += Math.round((successRate - 0.8) * (selfManages ? 10 : 20));
|
|
125
131
|
}
|
|
126
132
|
|
|
127
133
|
// File churn: same file written 5+ times — genuine circular refactoring
|
|
@@ -130,26 +136,30 @@ export class AdaptiveThresholds {
|
|
|
130
136
|
|
|
131
137
|
// Error trend: increasing errors in second half = degradation
|
|
132
138
|
const errorTrend = signals.errorTrend || 0;
|
|
133
|
-
if (errorTrend > 0) score -= errorTrend * 6;
|
|
134
|
-
if (errorTrend < 0) score += 3;
|
|
139
|
+
if (errorTrend > 0) score -= errorTrend * (selfManages ? 3 : 6);
|
|
140
|
+
if (errorTrend < 0) score += 3;
|
|
135
141
|
|
|
136
142
|
// Files written: productivity signal
|
|
137
143
|
const filesWritten = signals.filesWritten || 0;
|
|
138
144
|
score += Math.min(filesWritten * 2, 10); // Cap at +10
|
|
139
145
|
|
|
140
|
-
//
|
|
141
|
-
|
|
146
|
+
// The following signals are skipped for self-managing providers because
|
|
147
|
+
// they're false positives during debugging:
|
|
148
|
+
// - outputLengthDecay: shorter responses = narrowing in on a problem
|
|
149
|
+
// - toolOutputVolume: reading logs/large files is expected
|
|
150
|
+
// - turnLatencyTrend: thinking longer about hard problems is fine
|
|
151
|
+
// - bashRepetition: polling (sleep + check) is a normal pattern
|
|
152
|
+
if (!selfManages) {
|
|
153
|
+
if (signals.outputLengthDecay) score -= 10;
|
|
142
154
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
else if (toolVol === 1) score -= 5;
|
|
155
|
+
const toolVol = signals.toolOutputVolume || 0;
|
|
156
|
+
if (toolVol === 2) score -= 10;
|
|
157
|
+
else if (toolVol === 1) score -= 5;
|
|
147
158
|
|
|
148
|
-
|
|
149
|
-
if (signals.turnLatencyTrend) score -= 5;
|
|
159
|
+
if (signals.turnLatencyTrend) score -= 5;
|
|
150
160
|
|
|
151
|
-
|
|
152
|
-
|
|
161
|
+
if (signals.bashRepetition) score -= 8;
|
|
162
|
+
}
|
|
153
163
|
|
|
154
164
|
// Clamp to 0-100
|
|
155
165
|
return Math.max(0, Math.min(100, score));
|
|
@@ -443,24 +443,47 @@ export class Journalist {
|
|
|
443
443
|
`Scope: ${agent.scope?.join(', ') || 'unrestricted'}${dir}`,
|
|
444
444
|
`Rotation reason: ${reason}`,
|
|
445
445
|
'',
|
|
446
|
-
'Analyze the session log below and produce a structured handoff brief.',
|
|
446
|
+
'Analyze the FULL session log below and produce a structured handoff brief.',
|
|
447
|
+
'The next agent must be able to continue this work without repeating anything.',
|
|
447
448
|
'',
|
|
448
449
|
'Output EXACTLY these sections, in this priority order:',
|
|
449
450
|
'',
|
|
451
|
+
'## Investigation Path',
|
|
452
|
+
'(Chronological narrative of what was explored and why. For each major step:',
|
|
453
|
+
' what was tried, what the result was, and whether it was ruled out or remains viable.',
|
|
454
|
+
' The next agent must know the full path taken to avoid retreading ground.)',
|
|
455
|
+
'',
|
|
456
|
+
'## Current State',
|
|
457
|
+
'(Where things stand right now. What is the current hypothesis or approach?',
|
|
458
|
+
' What was the agent actively working on when rotated? What is the next step?)',
|
|
459
|
+
'',
|
|
460
|
+
'## What Was Ruled Out',
|
|
461
|
+
'(Approaches, files, or theories that were investigated and eliminated.',
|
|
462
|
+
' Include WHY each was ruled out so the next agent does not retry them.)',
|
|
463
|
+
'',
|
|
464
|
+
'## Key Findings',
|
|
465
|
+
'(Important discoveries: root causes identified, relevant code locations,',
|
|
466
|
+
' configuration details, error patterns, dependencies found. Name files,',
|
|
467
|
+
' functions, and line numbers.)',
|
|
468
|
+
'',
|
|
450
469
|
'## Unresolved Errors',
|
|
451
|
-
'(
|
|
470
|
+
'(Errors still occurring. Include exact error messages and context.)',
|
|
471
|
+
'',
|
|
472
|
+
'## User Messages',
|
|
473
|
+
'(EVERY message the user typed, verbatim or near-verbatim. These are critical —',
|
|
474
|
+
' the user must never have to repeat themselves after a rotation. Include all',
|
|
475
|
+
' instructions, questions, corrections, and context the user provided.)',
|
|
452
476
|
'',
|
|
453
477
|
'## User Constraints',
|
|
454
478
|
'(Explicit user directives, must/never/avoid/use instructions.)',
|
|
455
479
|
'',
|
|
456
|
-
'## Last
|
|
480
|
+
'## Last 15 Tool Calls',
|
|
457
481
|
'(Compact list of the most recent meaningful tool calls and outcomes.)',
|
|
458
482
|
'',
|
|
459
|
-
'## Accomplishments',
|
|
460
|
-
'(What was completed. Name files, functions, and line numbers.)',
|
|
461
|
-
'',
|
|
462
483
|
'Be specific. Name files, functions, and line numbers. Do not summarize vaguely.',
|
|
463
|
-
'
|
|
484
|
+
'Preserve the investigation narrative — the next agent needs to understand the',
|
|
485
|
+
'journey, not just the destination.',
|
|
486
|
+
'Keep your response under 4000 characters.',
|
|
464
487
|
'',
|
|
465
488
|
'---',
|
|
466
489
|
'',
|
|
@@ -469,8 +492,8 @@ export class Journalist {
|
|
|
469
492
|
];
|
|
470
493
|
|
|
471
494
|
let totalChars = 0;
|
|
472
|
-
const cap =
|
|
473
|
-
for (const entry of entries.slice(-
|
|
495
|
+
const cap = 40_000;
|
|
496
|
+
for (const entry of entries.slice(-500)) {
|
|
474
497
|
const line = this.formatEntry(entry);
|
|
475
498
|
if (totalChars + line.length > cap) break;
|
|
476
499
|
parts.push(line);
|
|
@@ -861,7 +884,14 @@ export class Journalist {
|
|
|
861
884
|
? `- Quality profile: ${specialization.avgQualityScore}/100 across ${specialization.sessionCount} sessions`
|
|
862
885
|
: '';
|
|
863
886
|
|
|
864
|
-
const recentChain = this.daemon.memory?.getRecentHandoffMarkdown(agent.role,
|
|
887
|
+
const recentChain = this.daemon.memory?.getRecentHandoffMarkdown(agent.role, 3, 3000, agent.workingDir, agent.teamId) || '';
|
|
888
|
+
|
|
889
|
+
// User messages from the session log — these are the actual things the user typed.
|
|
890
|
+
// They must always be preserved: if a user said it, the next agent needs to see it.
|
|
891
|
+
const userMessages = entries
|
|
892
|
+
.filter((e) => e.type === 'user' && e.text)
|
|
893
|
+
.map((e) => `- "${e.text.slice(0, 500)}"`)
|
|
894
|
+
.join('\n');
|
|
865
895
|
|
|
866
896
|
const agentFeedback = this.getUserFeedback(agent.id).slice(-5);
|
|
867
897
|
const conversationSummary = agentFeedback.length > 0
|
|
@@ -870,7 +900,7 @@ export class Journalist {
|
|
|
870
900
|
|
|
871
901
|
const recentTools = entries
|
|
872
902
|
.filter((e) => e.type === 'tool' || e.type === 'error')
|
|
873
|
-
.slice(-
|
|
903
|
+
.slice(-15)
|
|
874
904
|
.map((e) => `- ${e.type === 'error' ? 'ERROR ' : ''}${e.tool}: ${(e.input || e.text || '').slice(0, 200)}`)
|
|
875
905
|
.join('\n');
|
|
876
906
|
|
|
@@ -907,24 +937,32 @@ export class Journalist {
|
|
|
907
937
|
|
|
908
938
|
const fallbackRecentTools = entries
|
|
909
939
|
.filter((e) => e.type === 'tool' || e.type === 'error')
|
|
910
|
-
.slice(-
|
|
940
|
+
.slice(-15)
|
|
911
941
|
.map((e) => `- ${e.type === 'error' ? 'ERROR ' : ''}${e.tool}: ${(e.input || '').slice(0, 200)}`)
|
|
912
942
|
.join('\n');
|
|
913
943
|
|
|
944
|
+
// Build investigation timeline from thinking entries — these capture reasoning and decisions
|
|
945
|
+
const thinkingEntries = entries
|
|
946
|
+
.filter((e) => e.type === 'thinking' && e.text && e.text.length > 80)
|
|
947
|
+
.slice(-10)
|
|
948
|
+
.map((e) => `- ${e.text.slice(0, 400)}`)
|
|
949
|
+
.join('\n');
|
|
950
|
+
|
|
914
951
|
const fallbackParts = [];
|
|
952
|
+
if (thinkingEntries) fallbackParts.push(`## Investigation Path\n\n${thinkingEntries}`);
|
|
915
953
|
if (errorSummary) fallbackParts.push(`## Unresolved Errors\n\n${errorSummary}`);
|
|
916
|
-
if (fallbackRecentTools) fallbackParts.push(`## Last
|
|
954
|
+
if (fallbackRecentTools) fallbackParts.push(`## Last 15 Tool Calls\n\n${fallbackRecentTools}`);
|
|
917
955
|
if (fileChangesSummary) fallbackParts.push(`## Files Modified\n\n${fileChangesSummary}`);
|
|
918
956
|
if (resultSummary) fallbackParts.push(`## Accomplishments\n\n${resultSummary}`);
|
|
919
957
|
sessionSummary = fallbackParts.join('\n\n');
|
|
920
958
|
}
|
|
921
959
|
|
|
922
|
-
// For quality_degradation rotations, drop user messages (already in session summary)
|
|
923
|
-
const includeUserMessages = options.reason !== 'quality_degradation';
|
|
924
|
-
|
|
925
960
|
// Cap Original Task to 1000 chars — task descriptions for debugging can be long
|
|
926
961
|
const originalTask = agent.prompt ? agent.prompt.slice(0, 1000) + (agent.prompt.length > 1000 ? '…' : '') : '';
|
|
927
962
|
|
|
963
|
+
// Combine user messages from session log and feedback API — never drop these
|
|
964
|
+
const allUserMessages = [userMessages, conversationSummary].filter(Boolean).join('\n');
|
|
965
|
+
|
|
928
966
|
let brief = [
|
|
929
967
|
`# Handoff Brief — ${agent.name} (${agent.role})`,
|
|
930
968
|
``,
|
|
@@ -933,14 +971,14 @@ export class Journalist {
|
|
|
933
971
|
`Rotation: ${options.reason || 'manual'}${options.qualityScore ? ` (quality: ${options.qualityScore}/100)` : ''} | Tokens: ${agent.tokensUsed}`,
|
|
934
972
|
specLine,
|
|
935
973
|
``,
|
|
936
|
-
// Priority order: session summary (
|
|
937
|
-
//
|
|
938
|
-
//
|
|
974
|
+
// Priority order: session summary first, then user messages (never drop —
|
|
975
|
+
// if the user typed it, the next agent must see it), then constraints,
|
|
976
|
+
// then discoveries, then tools. Most critical context survives truncation.
|
|
939
977
|
sessionSummary ? `## Session Summary\n\n${sessionSummary}\n` : '',
|
|
978
|
+
allUserMessages ? `## User Messages (do not ask user to repeat these)\n\n${allUserMessages}\n` : '',
|
|
940
979
|
constraints ? `## Project Constraints (must follow)\n\n${constraints}\n` : '',
|
|
941
980
|
discoveries ? `## Known Issues & Fixes\n\n${discoveries}\n` : '',
|
|
942
|
-
recentTools ? `## Last
|
|
943
|
-
includeUserMessages && conversationSummary ? `## Recent User Messages\n\n${conversationSummary}\n` : '',
|
|
981
|
+
recentTools ? `## Last 15 Tool Calls\n\n${recentTools}\n` : '',
|
|
944
982
|
recentChain ? `## Rotation History\n\n${recentChain}\n` : '',
|
|
945
983
|
originalTask ? `## Original Task\n\n${originalTask}\n` : '',
|
|
946
984
|
``,
|
|
@@ -948,9 +986,9 @@ export class Journalist {
|
|
|
948
986
|
`Continue seamlessly — finish the work and deliver the output.`,
|
|
949
987
|
].filter(Boolean).join('\n');
|
|
950
988
|
|
|
951
|
-
// Hard cap:
|
|
952
|
-
if (brief.length >
|
|
953
|
-
brief = brief.slice(0,
|
|
989
|
+
// Hard cap: 16000 chars — investigation context needs room to preserve the full narrative
|
|
990
|
+
if (brief.length > 16000) {
|
|
991
|
+
brief = brief.slice(0, 15950) + '\n\n[Brief truncated — see session logs for full context]';
|
|
954
992
|
}
|
|
955
993
|
|
|
956
994
|
return brief;
|
|
@@ -4,8 +4,6 @@
|
|
|
4
4
|
import { resolve } from 'path';
|
|
5
5
|
import { existsSync, readFileSync, writeFileSync, mkdirSync, readdirSync, unlinkSync } from 'fs';
|
|
6
6
|
import { randomUUID } from 'crypto';
|
|
7
|
-
import { Readable } from 'stream';
|
|
8
|
-
|
|
9
7
|
const RUNTIME_TYPES = ['ollama', 'vllm', 'llama-cpp', 'tgi', 'openai-compatible'];
|
|
10
8
|
const DEFAULT_OLLAMA_ENDPOINT = 'http://localhost:11434';
|
|
11
9
|
|
|
@@ -249,11 +247,14 @@ export class ModelLab {
|
|
|
249
247
|
throw new Error(errMsg);
|
|
250
248
|
}
|
|
251
249
|
|
|
252
|
-
const
|
|
250
|
+
const reader = resp.body.getReader();
|
|
251
|
+
const decoder = new TextDecoder();
|
|
253
252
|
let buffer = '';
|
|
254
253
|
|
|
255
|
-
|
|
256
|
-
|
|
254
|
+
while (true) {
|
|
255
|
+
const { done, value } = await reader.read();
|
|
256
|
+
if (done) break;
|
|
257
|
+
buffer += decoder.decode(value, { stream: true });
|
|
257
258
|
const lines = buffer.split('\n');
|
|
258
259
|
buffer = lines.pop() || '';
|
|
259
260
|
|
|
@@ -145,15 +145,12 @@ export class Rotator extends EventEmitter {
|
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
const signals = signalsEarly;
|
|
148
|
-
|
|
148
|
+
const providerForScore = getProvider(agent.provider);
|
|
149
|
+
const selfManages = providerForScore?.constructor?.managesOwnContext ?? false;
|
|
150
|
+
let score = this.daemon.adaptive.scoreSession(signals, { selfManagesContext: selfManages });
|
|
149
151
|
|
|
150
152
|
// Age penalties: only for providers that don't manage their own context.
|
|
151
|
-
|
|
152
|
-
// are normal and productive. Penalizing age causes premature rotation
|
|
153
|
-
// that destroys active debugging context and creates restart loops.
|
|
154
|
-
const providerForAge = getProvider(agent.provider);
|
|
155
|
-
const selfManagesForAge = providerForAge?.constructor?.managesOwnContext ?? false;
|
|
156
|
-
if (!selfManagesForAge) {
|
|
153
|
+
if (!selfManages) {
|
|
157
154
|
if (ageSec > 1800) score -= 5;
|
|
158
155
|
if (ageSec > 3600) score -= 10;
|
|
159
156
|
if (ageSec > 7200) score -= 15;
|
|
@@ -385,6 +382,7 @@ export class Rotator extends EventEmitter {
|
|
|
385
382
|
contextUsage: agent.contextUsage,
|
|
386
383
|
reason: options.reason || 'manual',
|
|
387
384
|
qualityScore: options.qualityScore || null,
|
|
385
|
+
qualitySignals: options.signals || null,
|
|
388
386
|
timestamp: new Date().toISOString(),
|
|
389
387
|
};
|
|
390
388
|
|