For: src/web/pages/settings.ts is too big to read or to change without a conflict; promptsSettingsPage, promptSourceAdd, promptSourceRun, promptSourceDelete and the helpers only they use (settings.ts:1591–1684) is one concept and gets its own module, with no change in behaviour.
Done:
[ ] src/web/pages/prompts.ts holds promptsSettingsPage, promptSourceAdd, promptSourceRun, promptSourceDelete and the helpers only they use (settings.ts:1591–1684); src/web/pages/settings.ts keeps none of it and imports or calls it from the new file.
[ ] Every route, page and form answers exactly as before: Settings › Prompts draws the same HTML and each form answers as before; the prompts tests pass unchanged.
[ ] A helper both files need is exported from where it lives now; nothing is copied.
[ ] Before pushing: bun x tsc --noEmit, the tests that cover the moved code, and bun scripts/design-lint.ts when src/web/ changes. A red test elsewhere that main also has is named in the pull.
Files: src/web/pages/settings.ts, src/web/pages/prompts.ts, the files that import what moved.
Risk: the Settings tab bar is shared; leave it where it is and import it. Runs in parallel with the labels and hooks moves: keep to your own lines of settings.ts.
For: src/web/pages/settings.ts is too big to read or to change without a conflict;
promptsSettingsPage,promptSourceAdd,promptSourceRun,promptSourceDeleteand the helpers only they use (settings.ts:1591–1684) is one concept and gets its own module, with no change in behaviour.Done:
promptsSettingsPage,promptSourceAdd,promptSourceRun,promptSourceDeleteand the helpers only they use (settings.ts:1591–1684); src/web/pages/settings.ts keeps none of it and imports or calls it from the new file.bun x tsc --noEmit, the tests that cover the moved code, andbun scripts/design-lint.tswhen src/web/ changes. A red test elsewhere that main also has is named in the pull.Files: src/web/pages/settings.ts, src/web/pages/prompts.ts, the files that import what moved.
Risk: the Settings tab bar is shared; leave it where it is and import it. Runs in parallel with the labels and hooks moves: keep to your own lines of settings.ts.