walleyboard 0.0.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/dist/backend/index.js +96524 -0
- package/dist/backend/index.js.map +7 -0
- package/dist/cli.js +101 -0
- package/dist/cli.js.map +7 -0
- package/dist/drizzle/0000_initial_schema.sql +195 -0
- package/dist/drizzle/meta/0000_snapshot.json +1458 -0
- package/dist/drizzle/meta/_journal.json +13 -0
- package/dist/web/agent-icons/claude-code.svg +14 -0
- package/dist/web/agent-icons/codex.svg +51 -0
- package/dist/web/alert.mp3 +0 -0
- package/dist/web/alert.mp3.license.txt +12 -0
- package/dist/web/assets/abap-CkQ0tsz-.js +1 -0
- package/dist/web/assets/actionscript-3-DHm0ZfF4.js +1 -0
- package/dist/web/assets/ada-DK_ua92Z.js +1 -0
- package/dist/web/assets/andromeeda-D2ccw8v4.js +1 -0
- package/dist/web/assets/angular-html-QueFZhlu.js +1 -0
- package/dist/web/assets/angular-ts-CD8gNhsG.js +1 -0
- package/dist/web/assets/apache-DXtpFu7o.js +1 -0
- package/dist/web/assets/apex-DlnRRWpl.js +1 -0
- package/dist/web/assets/apl-mOtUtkHV.js +1 -0
- package/dist/web/assets/applescript-CShk62ad.js +1 -0
- package/dist/web/assets/ara-CWN-FDkm.js +1 -0
- package/dist/web/assets/asciidoc-Bg-PM9Vn.js +1 -0
- package/dist/web/assets/asm-DKOhR24S.js +1 -0
- package/dist/web/assets/astro-Bfpg7vK7.js +1 -0
- package/dist/web/assets/aurora-x-DpaEirL8.js +1 -0
- package/dist/web/assets/awk-3ibKHffv.js +1 -0
- package/dist/web/assets/ayu-dark-ursiSH5k.js +1 -0
- package/dist/web/assets/ayu-light-DMjlrKmx.js +1 -0
- package/dist/web/assets/ayu-mirage-DZEMb75h.js +1 -0
- package/dist/web/assets/ballerina-xx7VNGxs.js +1 -0
- package/dist/web/assets/bat-DGYsZ5wR.js +1 -0
- package/dist/web/assets/beancount-D_ATR1UV.js +1 -0
- package/dist/web/assets/berry-BqYMORfH.js +1 -0
- package/dist/web/assets/bibtex-CQTBDajW.js +1 -0
- package/dist/web/assets/bicep-CfNtxPrK.js +1 -0
- package/dist/web/assets/bird2-C0dUPe3I.js +1 -0
- package/dist/web/assets/blade-DI3iOden.js +1 -0
- package/dist/web/assets/bsl-Dx5tFn3i.js +1 -0
- package/dist/web/assets/c-CPK5Nvaz.js +1 -0
- package/dist/web/assets/c3-BUwZ5e3k.js +1 -0
- package/dist/web/assets/cadence-C3OKDYrr.js +1 -0
- package/dist/web/assets/cairo-wCCQTdA9.js +1 -0
- package/dist/web/assets/catppuccin-frappe-CMnRXVZP.js +1 -0
- package/dist/web/assets/catppuccin-latte-CqhXSjCC.js +1 -0
- package/dist/web/assets/catppuccin-macchiato-B6kneE0C.js +1 -0
- package/dist/web/assets/catppuccin-mocha-CP8YZpvj.js +1 -0
- package/dist/web/assets/clarity-Crxe8gSr.js +1 -0
- package/dist/web/assets/clojure-BuzOUPMr.js +1 -0
- package/dist/web/assets/cmake-CCpZLdLI.js +1 -0
- package/dist/web/assets/cobol-D07sA9Lg.js +1 -0
- package/dist/web/assets/codeowners-Bo1VYpHz.js +1 -0
- package/dist/web/assets/codeql-Db01hzHE.js +1 -0
- package/dist/web/assets/coffee-DVM-5V2u.js +1 -0
- package/dist/web/assets/common-lisp-CMlJIc6Y.js +1 -0
- package/dist/web/assets/coq-BlzBYp3f.js +1 -0
- package/dist/web/assets/cpp-D9booGak.js +1 -0
- package/dist/web/assets/crystal-ChgwUcWK.js +1 -0
- package/dist/web/assets/csharp-kfNshAa7.js +1 -0
- package/dist/web/assets/css-CVeSW4vV.js +1 -0
- package/dist/web/assets/csv-Dr8ri5Nd.js +1 -0
- package/dist/web/assets/cue-jXfhyOwY.js +1 -0
- package/dist/web/assets/cypher-CayLeiaR.js +1 -0
- package/dist/web/assets/d-BMZQ0mAy.js +1 -0
- package/dist/web/assets/dark-plus-B__q47Nr.js +1 -0
- package/dist/web/assets/dart-gMOEMyuz.js +1 -0
- package/dist/web/assets/dax-C3t5LadU.js +1 -0
- package/dist/web/assets/desktop-DmhXLwLR.js +1 -0
- package/dist/web/assets/diff-togOXQX6.js +1 -0
- package/dist/web/assets/docker--6N01olR.js +1 -0
- package/dist/web/assets/dotenv-Bq930Yx8.js +1 -0
- package/dist/web/assets/dracula-CBkSghcw.js +1 -0
- package/dist/web/assets/dracula-soft-CCSYeoxL.js +1 -0
- package/dist/web/assets/dream-maker-BiMf3DHl.js +1 -0
- package/dist/web/assets/edge-Ba3d3Dcc.js +1 -0
- package/dist/web/assets/elixir-CkA3kAlh.js +1 -0
- package/dist/web/assets/elm-MgWFeK_Z.js +1 -0
- package/dist/web/assets/emacs-lisp-Dhht7he2.js +1 -0
- package/dist/web/assets/erb-BWZZKl0S.js +1 -0
- package/dist/web/assets/erlang-CtK0kQ6z.js +1 -0
- package/dist/web/assets/everforest-dark-NqSz4oHS.js +1 -0
- package/dist/web/assets/everforest-light-a3Yzs_lT.js +1 -0
- package/dist/web/assets/fennel-BExc9TZf.js +1 -0
- package/dist/web/assets/fish-C2p-AJmZ.js +1 -0
- package/dist/web/assets/fluent-CeYzs8Qy.js +1 -0
- package/dist/web/assets/fortran-fixed-form-DBM4e0_k.js +1 -0
- package/dist/web/assets/fortran-free-form-BIQEK2Jw.js +1 -0
- package/dist/web/assets/fsharp-CmzzGQLe.js +1 -0
- package/dist/web/assets/gdresource-B_wbPqHd.js +1 -0
- package/dist/web/assets/gdscript-B5JQPh_-.js +1 -0
- package/dist/web/assets/gdshader-vVjJ_Qr8.js +1 -0
- package/dist/web/assets/genie-DGl5rqC8.js +1 -0
- package/dist/web/assets/gherkin-CY_VLUnD.js +1 -0
- package/dist/web/assets/git-commit-1z4D6NzL.js +1 -0
- package/dist/web/assets/git-rebase-DuFcXwoS.js +1 -0
- package/dist/web/assets/github-dark-ClO4AStc.js +1 -0
- package/dist/web/assets/github-dark-default-CM0dPco8.js +1 -0
- package/dist/web/assets/github-dark-dimmed-Cb6xxpXY.js +1 -0
- package/dist/web/assets/github-dark-high-contrast-BpYtx2-M.js +1 -0
- package/dist/web/assets/github-light-CeOVFgf_.js +1 -0
- package/dist/web/assets/github-light-default-BmnCWL6x.js +1 -0
- package/dist/web/assets/github-light-high-contrast-rpagNF5O.js +1 -0
- package/dist/web/assets/gleam-BarIG9kQ.js +1 -0
- package/dist/web/assets/glimmer-js-DdMotH2C.js +1 -0
- package/dist/web/assets/glimmer-ts-oYwdRY2p.js +1 -0
- package/dist/web/assets/glsl-BuKRd6Yh.js +1 -0
- package/dist/web/assets/gn-DhYsTPYc.js +1 -0
- package/dist/web/assets/gnuplot-CucLlTBc.js +1 -0
- package/dist/web/assets/go-toi-uWvg.js +1 -0
- package/dist/web/assets/graphql-BYuoMRRn.js +1 -0
- package/dist/web/assets/groovy-Ds4dis_k.js +1 -0
- package/dist/web/assets/gruvbox-dark-hard-aPiW8pQh.js +1 -0
- package/dist/web/assets/gruvbox-dark-medium-2HJCvzsS.js +1 -0
- package/dist/web/assets/gruvbox-dark-soft-Da97ODX9.js +1 -0
- package/dist/web/assets/gruvbox-light-hard-BXlEipFe.js +1 -0
- package/dist/web/assets/gruvbox-light-medium-Cun-GjGk.js +1 -0
- package/dist/web/assets/gruvbox-light-soft-Bd3qiiSw.js +1 -0
- package/dist/web/assets/hack-BbWeq5Rt.js +1 -0
- package/dist/web/assets/haml-DFJ-r8ZM.js +1 -0
- package/dist/web/assets/handlebars-AvIIYveZ.js +1 -0
- package/dist/web/assets/haskell-B_jvz5Po.js +1 -0
- package/dist/web/assets/haxe-BRbuo5UO.js +1 -0
- package/dist/web/assets/hcl-BzNUCtsK.js +1 -0
- package/dist/web/assets/hjson-BxVo3sS2.js +1 -0
- package/dist/web/assets/hlsl-C8Wes1nf.js +1 -0
- package/dist/web/assets/horizon-D54PjLAY.js +1 -0
- package/dist/web/assets/horizon-bright-D9RccdIr.js +1 -0
- package/dist/web/assets/houston-CMu1N_4K.js +1 -0
- package/dist/web/assets/html-BFocLm8g.js +1 -0
- package/dist/web/assets/html-derivative-pnhn6ifn.js +1 -0
- package/dist/web/assets/http-BSX4zxNU.js +1 -0
- package/dist/web/assets/hurl-DjPoMW--.js +1 -0
- package/dist/web/assets/hxml-DC4KwKt2.js +1 -0
- package/dist/web/assets/hy-dMrJKKU_.js +1 -0
- package/dist/web/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2 +0 -0
- package/dist/web/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff +0 -0
- package/dist/web/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff +0 -0
- package/dist/web/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2 +0 -0
- package/dist/web/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff +0 -0
- package/dist/web/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2 +0 -0
- package/dist/web/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2 +0 -0
- package/dist/web/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff +0 -0
- package/dist/web/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2 +0 -0
- package/dist/web/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2 +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff +0 -0
- package/dist/web/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2 +0 -0
- package/dist/web/assets/imba-DG_oO8tg.js +1 -0
- package/dist/web/assets/index-DPwgdqVn.js +2157 -0
- package/dist/web/assets/index-Q9oZyhsK.css +1 -0
- package/dist/web/assets/ini-geHw79Aj.js +1 -0
- package/dist/web/assets/java-BoZ2xYe9.js +1 -0
- package/dist/web/assets/javascript-D_veK2wh.js +1 -0
- package/dist/web/assets/jinja-CDTYFc-9.js +1 -0
- package/dist/web/assets/jison-C6vH7ARj.js +1 -0
- package/dist/web/assets/json-C5Ytt7X0.js +1 -0
- package/dist/web/assets/json5-CDUsNqz6.js +1 -0
- package/dist/web/assets/jsonc-D48xcwyD.js +1 -0
- package/dist/web/assets/jsonl-cpIYDXEe.js +1 -0
- package/dist/web/assets/jsonnet-Da1lhszN.js +1 -0
- package/dist/web/assets/jssm-B8BLrEGL.js +1 -0
- package/dist/web/assets/jsx-B4cf0zZn.js +1 -0
- package/dist/web/assets/julia-BPQYUO1a.js +1 -0
- package/dist/web/assets/just-CSFDSWr2.js +1 -0
- package/dist/web/assets/kanagawa-dragon-2Sk8Rx83.js +1 -0
- package/dist/web/assets/kanagawa-lotus-CQVSWfJp.js +1 -0
- package/dist/web/assets/kanagawa-wave-BKWNioLX.js +1 -0
- package/dist/web/assets/kdl-B-2tSRmp.js +1 -0
- package/dist/web/assets/kotlin-DepsEzh3.js +1 -0
- package/dist/web/assets/kusto-BcCtXIb8.js +1 -0
- package/dist/web/assets/laserwave-BUqkO46F.js +1 -0
- package/dist/web/assets/latex-_hhcQrEo.js +1 -0
- package/dist/web/assets/lean-CNO9ffpX.js +1 -0
- package/dist/web/assets/less-Dj0T9pWC.js +1 -0
- package/dist/web/assets/light-plus-C9Hnuc1T.js +1 -0
- package/dist/web/assets/liquid-C9V3zjwt.js +1 -0
- package/dist/web/assets/llvm-DbV9b66l.js +1 -0
- package/dist/web/assets/log-BMblmPyH.js +1 -0
- package/dist/web/assets/logo-B78qMxws.js +1 -0
- package/dist/web/assets/lua-oLyRF5Yo.js +1 -0
- package/dist/web/assets/luau-BUd8xsdE.js +1 -0
- package/dist/web/assets/make-Ev-6cJrd.js +1 -0
- package/dist/web/assets/markdown-CS4LI6sN.js +1 -0
- package/dist/web/assets/marko-ChwkImJC.js +1 -0
- package/dist/web/assets/material-theme-5rA1zn0D.js +1 -0
- package/dist/web/assets/material-theme-darker-DGOEiL65.js +1 -0
- package/dist/web/assets/material-theme-lighter-CULfFRX0.js +1 -0
- package/dist/web/assets/material-theme-ocean-LQZ9CleP.js +1 -0
- package/dist/web/assets/material-theme-palenight-Di_f5oks.js +1 -0
- package/dist/web/assets/matlab-C0qEtAx9.js +1 -0
- package/dist/web/assets/mdc-AnIxMdsi.js +1 -0
- package/dist/web/assets/mdx-CzvnbLXb.js +1 -0
- package/dist/web/assets/mermaid-BPquZaKt.js +1 -0
- package/dist/web/assets/min-dark-rkuIbtJV.js +1 -0
- package/dist/web/assets/min-light-Dj_HOGsr.js +1 -0
- package/dist/web/assets/mipsasm-k5DQoS6j.js +1 -0
- package/dist/web/assets/mojo-sTTDuNnR.js +1 -0
- package/dist/web/assets/monokai-D5p-u2ij.js +1 -0
- package/dist/web/assets/moonbit-j5ChFtBC.js +1 -0
- package/dist/web/assets/move-Dj0Gmn6R.js +1 -0
- package/dist/web/assets/narrat-DJgMz2oW.js +1 -0
- package/dist/web/assets/nextflow-CApkvBGW.js +1 -0
- package/dist/web/assets/nextflow-groovy-eDLuZ_oi.js +1 -0
- package/dist/web/assets/nginx-DpR2T0XM.js +1 -0
- package/dist/web/assets/night-owl-CEdtPl3A.js +1 -0
- package/dist/web/assets/night-owl-light-GdSldewm.js +1 -0
- package/dist/web/assets/nim-BlLkb9HY.js +1 -0
- package/dist/web/assets/nix-CxIPS3pb.js +1 -0
- package/dist/web/assets/nord-3WFAz5H9.js +1 -0
- package/dist/web/assets/nushell-GDfBmoBU.js +1 -0
- package/dist/web/assets/objective-c-MFQ_MGUa.js +1 -0
- package/dist/web/assets/objective-cpp-Y83LcBE7.js +1 -0
- package/dist/web/assets/ocaml-FxYfaJxu.js +1 -0
- package/dist/web/assets/odin-CprihY3z.js +1 -0
- package/dist/web/assets/one-dark-pro-BB6mpmmA.js +1 -0
- package/dist/web/assets/one-light-BYLoxNtg.js +1 -0
- package/dist/web/assets/openscad-Bc1FbpOi.js +1 -0
- package/dist/web/assets/pascal-Bb4d8cUL.js +1 -0
- package/dist/web/assets/perl-Dtal4KFL.js +1 -0
- package/dist/web/assets/php-EXNL-XI6.js +1 -0
- package/dist/web/assets/pierre-dark-DbQedTMH.js +1 -0
- package/dist/web/assets/pierre-light-DxtrzyCi.js +1 -0
- package/dist/web/assets/pkl-tM25Sq0w.js +1 -0
- package/dist/web/assets/plastic-D3k2Xp_5.js +1 -0
- package/dist/web/assets/plsql-CLEfFhSj.js +1 -0
- package/dist/web/assets/po-CaAzdrrh.js +1 -0
- package/dist/web/assets/poimandres-bPTvT4Da.js +1 -0
- package/dist/web/assets/polar-TG7aTGdK.js +1 -0
- package/dist/web/assets/postcss-8kqfa9f0.js +1 -0
- package/dist/web/assets/powerquery-CtSu1Nfd.js +1 -0
- package/dist/web/assets/powershell-87lLBHMy.js +1 -0
- package/dist/web/assets/prisma-Dnf694DZ.js +1 -0
- package/dist/web/assets/prolog-C0XbHTWa.js +1 -0
- package/dist/web/assets/proto-BZP-HLIb.js +1 -0
- package/dist/web/assets/pug-CtNac4lQ.js +1 -0
- package/dist/web/assets/puppet-CJYWgYC5.js +1 -0
- package/dist/web/assets/purescript-B95Q6BAd.js +1 -0
- package/dist/web/assets/python-CqTCsi7P.js +1 -0
- package/dist/web/assets/qml-sNoMoPT5.js +1 -0
- package/dist/web/assets/qmldir-DlIL4hls.js +1 -0
- package/dist/web/assets/qss-BW72E0q_.js +1 -0
- package/dist/web/assets/r-4Pgu5UOV.js +1 -0
- package/dist/web/assets/racket-CCAimEsC.js +1 -0
- package/dist/web/assets/raku-mSuqElkM.js +1 -0
- package/dist/web/assets/razor-BCJugAS5.js +1 -0
- package/dist/web/assets/red-C-DA4yBI.js +1 -0
- package/dist/web/assets/reg-CGwMBJ2c.js +1 -0
- package/dist/web/assets/regexp-CoNNa8fg.js +1 -0
- package/dist/web/assets/rel-JwrbYgX4.js +1 -0
- package/dist/web/assets/riscv-CoYyE75b.js +1 -0
- package/dist/web/assets/ron-C5wrhnmJ.js +1 -0
- package/dist/web/assets/rose-pine-DlrMPYYd.js +1 -0
- package/dist/web/assets/rose-pine-dawn-DBHFtZD2.js +1 -0
- package/dist/web/assets/rose-pine-moon-BBfrpe5q.js +1 -0
- package/dist/web/assets/rosmsg-DlimTR9t.js +1 -0
- package/dist/web/assets/rst-DWFCPx3A.js +1 -0
- package/dist/web/assets/ruby-B238QyuR.js +1 -0
- package/dist/web/assets/rust-Cxnkxx3h.js +1 -0
- package/dist/web/assets/sas-DKjWItdp.js +1 -0
- package/dist/web/assets/sass-DEyqUIpU.js +1 -0
- package/dist/web/assets/scala-i3RN3yAN.js +1 -0
- package/dist/web/assets/scheme-BcKdjYkO.js +1 -0
- package/dist/web/assets/scss-DkRPXcC-.js +1 -0
- package/dist/web/assets/sdbl-Be_XWc3n.js +1 -0
- package/dist/web/assets/shaderlab-DXAhMdPo.js +1 -0
- package/dist/web/assets/shellscript-BO9jdW-B.js +1 -0
- package/dist/web/assets/shellsession-D7zqbAEP.js +1 -0
- package/dist/web/assets/slack-dark-3PDtm74m.js +1 -0
- package/dist/web/assets/slack-ochin-CwiuFRJD.js +1 -0
- package/dist/web/assets/smalltalk-BdBlL6ks.js +1 -0
- package/dist/web/assets/snazzy-light-Dyqc8Is2.js +1 -0
- package/dist/web/assets/solarized-dark-DZiTscIX.js +1 -0
- package/dist/web/assets/solarized-light-DBcfxrfG.js +1 -0
- package/dist/web/assets/solidity-DH-yUSWc.js +1 -0
- package/dist/web/assets/soy-BGzI6uG7.js +1 -0
- package/dist/web/assets/sparql-BdcL8cbr.js +1 -0
- package/dist/web/assets/splunk-CIjc4kxs.js +1 -0
- package/dist/web/assets/sql-CvHe5lvJ.js +1 -0
- package/dist/web/assets/ssh-config-BKVd4drG.js +1 -0
- package/dist/web/assets/stata-DWYrBYEe.js +1 -0
- package/dist/web/assets/stylus-tqAsmugv.js +1 -0
- package/dist/web/assets/surrealql-DP1I8YSO.js +1 -0
- package/dist/web/assets/svelte-jzvFdahx.js +1 -0
- package/dist/web/assets/swift-CdDBQ3_Z.js +1 -0
- package/dist/web/assets/synthwave-84-CbbRs73K.js +1 -0
- package/dist/web/assets/system-verilog-CBqEY-9v.js +1 -0
- package/dist/web/assets/systemd-khRP5zwK.js +1 -0
- package/dist/web/assets/talonscript-D_lneH-6.js +1 -0
- package/dist/web/assets/tasl-CLymawGe.js +1 -0
- package/dist/web/assets/tcl-BRY1S87U.js +1 -0
- package/dist/web/assets/templ-DvJjGnAb.js +1 -0
- package/dist/web/assets/terraform-BqohMo2f.js +1 -0
- package/dist/web/assets/tex-D1OAWJIg.js +1 -0
- package/dist/web/assets/tokyo-night-BWUONxad.js +1 -0
- package/dist/web/assets/toml-C4c85Lwg.js +1 -0
- package/dist/web/assets/ts-tags-BwUmKdIa.js +1 -0
- package/dist/web/assets/tsv-DsZq9HBQ.js +1 -0
- package/dist/web/assets/tsx-Ck_Lj734.js +1 -0
- package/dist/web/assets/turtle-Dpr8zLlw.js +1 -0
- package/dist/web/assets/twig-CSIKkrXR.js +1 -0
- package/dist/web/assets/typescript-CqJJRVNY.js +1 -0
- package/dist/web/assets/typespec-DcqgATB-.js +1 -0
- package/dist/web/assets/typst-CeVxmuPg.js +1 -0
- package/dist/web/assets/v-C2Qsh2-1.js +1 -0
- package/dist/web/assets/vala-CvZ3yL7c.js +1 -0
- package/dist/web/assets/vb-B_p4qDw4.js +1 -0
- package/dist/web/assets/verilog-D8MGjxD7.js +1 -0
- package/dist/web/assets/vesper-DossXiE1.js +1 -0
- package/dist/web/assets/vhdl-MLyYh_Gz.js +1 -0
- package/dist/web/assets/viml-BuYIArcz.js +1 -0
- package/dist/web/assets/vitesse-black-C3kc1227.js +1 -0
- package/dist/web/assets/vitesse-dark-kWOu5V36.js +1 -0
- package/dist/web/assets/vitesse-light-DMtiL8bK.js +1 -0
- package/dist/web/assets/vue-DALp-G3I.js +1 -0
- package/dist/web/assets/vue-html-D5DWhcJD.js +1 -0
- package/dist/web/assets/vue-vine-CenYfssv.js +1 -0
- package/dist/web/assets/vyper-CNqG09-_.js +1 -0
- package/dist/web/assets/wasm-BsQDV7Y0.js +1 -0
- package/dist/web/assets/wasm-DFVlQlgd.js +1 -0
- package/dist/web/assets/wenyan-BmOQge13.js +1 -0
- package/dist/web/assets/wgsl-CgWrmvIg.js +1 -0
- package/dist/web/assets/wikitext-DkwckXCk.js +1 -0
- package/dist/web/assets/wit-CtyVFGe7.js +1 -0
- package/dist/web/assets/wolfram-CXE4FrKz.js +1 -0
- package/dist/web/assets/xml-D2hoBLtY.js +1 -0
- package/dist/web/assets/xsl-DRIcRqBU.js +1 -0
- package/dist/web/assets/yaml-B3lmoKzO.js +1 -0
- package/dist/web/assets/zenscript-DH15wJt0.js +1 -0
- package/dist/web/assets/zig-CqXN9brD.js +1 -0
- package/dist/web/index.html +14 -0
- package/package.json +33 -0
package/dist/cli.js
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// src/cli.ts
|
|
4
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
5
|
+
import { dirname, join, resolve } from "node:path";
|
|
6
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
7
|
+
function readPackageVersion(packageRoot) {
|
|
8
|
+
const packageJsonPath = join(packageRoot, "package.json");
|
|
9
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf8"));
|
|
10
|
+
return packageJson.version ?? "0.0.0";
|
|
11
|
+
}
|
|
12
|
+
function printHelp() {
|
|
13
|
+
process.stdout.write(`Usage: walleyboard [--host <host>] [--port <port>]
|
|
14
|
+
|
|
15
|
+
Starts the WalleyBoard backend and serves the packaged frontend from the same
|
|
16
|
+
process.
|
|
17
|
+
|
|
18
|
+
Options:
|
|
19
|
+
--host <host> Bind host for the backend server.
|
|
20
|
+
--port <port> Bind port for the backend server.
|
|
21
|
+
--help Show this help text.
|
|
22
|
+
--version Show the package version.
|
|
23
|
+
`);
|
|
24
|
+
}
|
|
25
|
+
function parseCliOptions(argv) {
|
|
26
|
+
const options = {
|
|
27
|
+
showHelp: false,
|
|
28
|
+
showVersion: false
|
|
29
|
+
};
|
|
30
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
31
|
+
const argument = argv[index];
|
|
32
|
+
if (!argument) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if (argument === "--help" || argument === "-h") {
|
|
36
|
+
options.showHelp = true;
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
if (argument === "--version" || argument === "-v") {
|
|
40
|
+
options.showVersion = true;
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
if (argument === "--host") {
|
|
44
|
+
const value = argv[index + 1];
|
|
45
|
+
if (!value) {
|
|
46
|
+
throw new Error("--host requires a value");
|
|
47
|
+
}
|
|
48
|
+
options.host = value;
|
|
49
|
+
index += 1;
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
if (argument === "--port") {
|
|
53
|
+
const value = argv[index + 1];
|
|
54
|
+
if (!value) {
|
|
55
|
+
throw new Error("--port requires a value");
|
|
56
|
+
}
|
|
57
|
+
options.port = value;
|
|
58
|
+
index += 1;
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
throw new Error(`Unknown option: ${argument}`);
|
|
62
|
+
}
|
|
63
|
+
return options;
|
|
64
|
+
}
|
|
65
|
+
async function main() {
|
|
66
|
+
const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
|
67
|
+
const options = parseCliOptions(process.argv.slice(2));
|
|
68
|
+
if (options.showHelp) {
|
|
69
|
+
printHelp();
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (options.showVersion) {
|
|
73
|
+
process.stdout.write(`${readPackageVersion(packageRoot)}
|
|
74
|
+
`);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const backendEntryPath = join(packageRoot, "dist", "backend", "index.js");
|
|
78
|
+
const staticAssetDir = join(packageRoot, "dist", "web");
|
|
79
|
+
if (!existsSync(backendEntryPath) || !existsSync(staticAssetDir)) {
|
|
80
|
+
throw new Error(
|
|
81
|
+
"WalleyBoard is missing its packaged runtime assets. Rebuild the package before running it."
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
if (options.host) {
|
|
85
|
+
process.env.HOST = options.host;
|
|
86
|
+
}
|
|
87
|
+
if (options.port) {
|
|
88
|
+
process.env.PORT = options.port;
|
|
89
|
+
}
|
|
90
|
+
process.env.WALLEYBOARD_STATIC_DIR ??= staticAssetDir;
|
|
91
|
+
await import(pathToFileURL(backendEntryPath).href);
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
await main();
|
|
95
|
+
} catch (error) {
|
|
96
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
97
|
+
process.stderr.write(`${message}
|
|
98
|
+
`);
|
|
99
|
+
process.exitCode = 1;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/cli.ts"],
|
|
4
|
+
"sourcesContent": ["import { existsSync, readFileSync } from \"node:fs\";\nimport { dirname, join, resolve } from \"node:path\";\nimport { fileURLToPath, pathToFileURL } from \"node:url\";\n\ntype CliOptions = {\n host?: string;\n port?: string;\n showHelp: boolean;\n showVersion: boolean;\n};\n\nfunction readPackageVersion(packageRoot: string): string {\n const packageJsonPath = join(packageRoot, \"package.json\");\n const packageJson = JSON.parse(readFileSync(packageJsonPath, \"utf8\")) as {\n version?: string;\n };\n\n return packageJson.version ?? \"0.0.0\";\n}\n\nfunction printHelp(): void {\n process.stdout.write(`Usage: walleyboard [--host <host>] [--port <port>]\n\nStarts the WalleyBoard backend and serves the packaged frontend from the same\nprocess.\n\nOptions:\n --host <host> Bind host for the backend server.\n --port <port> Bind port for the backend server.\n --help Show this help text.\n --version Show the package version.\n`);\n}\n\nfunction parseCliOptions(argv: string[]): CliOptions {\n const options: CliOptions = {\n showHelp: false,\n showVersion: false,\n };\n\n for (let index = 0; index < argv.length; index += 1) {\n const argument = argv[index];\n if (!argument) {\n continue;\n }\n\n if (argument === \"--help\" || argument === \"-h\") {\n options.showHelp = true;\n continue;\n }\n\n if (argument === \"--version\" || argument === \"-v\") {\n options.showVersion = true;\n continue;\n }\n\n if (argument === \"--host\") {\n const value = argv[index + 1];\n if (!value) {\n throw new Error(\"--host requires a value\");\n }\n\n options.host = value;\n index += 1;\n continue;\n }\n\n if (argument === \"--port\") {\n const value = argv[index + 1];\n if (!value) {\n throw new Error(\"--port requires a value\");\n }\n\n options.port = value;\n index += 1;\n continue;\n }\n\n throw new Error(`Unknown option: ${argument}`);\n }\n\n return options;\n}\n\nasync function main(): Promise<void> {\n const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), \"..\");\n const options = parseCliOptions(process.argv.slice(2));\n\n if (options.showHelp) {\n printHelp();\n return;\n }\n\n if (options.showVersion) {\n process.stdout.write(`${readPackageVersion(packageRoot)}\\n`);\n return;\n }\n\n const backendEntryPath = join(packageRoot, \"dist\", \"backend\", \"index.js\");\n const staticAssetDir = join(packageRoot, \"dist\", \"web\");\n\n if (!existsSync(backendEntryPath) || !existsSync(staticAssetDir)) {\n throw new Error(\n \"WalleyBoard is missing its packaged runtime assets. Rebuild the package before running it.\",\n );\n }\n\n if (options.host) {\n process.env.HOST = options.host;\n }\n\n if (options.port) {\n process.env.PORT = options.port;\n }\n\n process.env.WALLEYBOARD_STATIC_DIR ??= staticAssetDir;\n\n await import(pathToFileURL(backendEntryPath).href);\n}\n\ntry {\n await main();\n} catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n process.stderr.write(`${message}\\n`);\n process.exitCode = 1;\n}\n"],
|
|
5
|
+
"mappings": ";;;AAAA,SAAS,YAAY,oBAAoB;AACzC,SAAS,SAAS,MAAM,eAAe;AACvC,SAAS,eAAe,qBAAqB;AAS7C,SAAS,mBAAmB,aAA6B;AACvD,QAAM,kBAAkB,KAAK,aAAa,cAAc;AACxD,QAAM,cAAc,KAAK,MAAM,aAAa,iBAAiB,MAAM,CAAC;AAIpE,SAAO,YAAY,WAAW;AAChC;AAEA,SAAS,YAAkB;AACzB,UAAQ,OAAO,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAUtB;AACD;AAEA,SAAS,gBAAgB,MAA4B;AACnD,QAAM,UAAsB;AAAA,IAC1B,UAAU;AAAA,IACV,aAAa;AAAA,EACf;AAEA,WAAS,QAAQ,GAAG,QAAQ,KAAK,QAAQ,SAAS,GAAG;AACnD,UAAM,WAAW,KAAK,KAAK;AAC3B,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AAEA,QAAI,aAAa,YAAY,aAAa,MAAM;AAC9C,cAAQ,WAAW;AACnB;AAAA,IACF;AAEA,QAAI,aAAa,eAAe,aAAa,MAAM;AACjD,cAAQ,cAAc;AACtB;AAAA,IACF;AAEA,QAAI,aAAa,UAAU;AACzB,YAAM,QAAQ,KAAK,QAAQ,CAAC;AAC5B,UAAI,CAAC,OAAO;AACV,cAAM,IAAI,MAAM,yBAAyB;AAAA,MAC3C;AAEA,cAAQ,OAAO;AACf,eAAS;AACT;AAAA,IACF;AAEA,QAAI,aAAa,UAAU;AACzB,YAAM,QAAQ,KAAK,QAAQ,CAAC;AAC5B,UAAI,CAAC,OAAO;AACV,cAAM,IAAI,MAAM,yBAAyB;AAAA,MAC3C;AAEA,cAAQ,OAAO;AACf,eAAS;AACT;AAAA,IACF;AAEA,UAAM,IAAI,MAAM,mBAAmB,QAAQ,EAAE;AAAA,EAC/C;AAEA,SAAO;AACT;AAEA,eAAe,OAAsB;AACnC,QAAM,cAAc,QAAQ,QAAQ,cAAc,YAAY,GAAG,CAAC,GAAG,IAAI;AACzE,QAAM,UAAU,gBAAgB,QAAQ,KAAK,MAAM,CAAC,CAAC;AAErD,MAAI,QAAQ,UAAU;AACpB,cAAU;AACV;AAAA,EACF;AAEA,MAAI,QAAQ,aAAa;AACvB,YAAQ,OAAO,MAAM,GAAG,mBAAmB,WAAW,CAAC;AAAA,CAAI;AAC3D;AAAA,EACF;AAEA,QAAM,mBAAmB,KAAK,aAAa,QAAQ,WAAW,UAAU;AACxE,QAAM,iBAAiB,KAAK,aAAa,QAAQ,KAAK;AAEtD,MAAI,CAAC,WAAW,gBAAgB,KAAK,CAAC,WAAW,cAAc,GAAG;AAChE,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEA,MAAI,QAAQ,MAAM;AAChB,YAAQ,IAAI,OAAO,QAAQ;AAAA,EAC7B;AAEA,MAAI,QAAQ,MAAM;AAChB,YAAQ,IAAI,OAAO,QAAQ;AAAA,EAC7B;AAEA,UAAQ,IAAI,2BAA2B;AAEvC,QAAM,OAAO,cAAc,gBAAgB,EAAE;AAC/C;AAEA,IAAI;AACF,QAAM,KAAK;AACb,SAAS,OAAO;AACd,QAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AACrE,UAAQ,OAAO,MAAM,GAAG,OAAO;AAAA,CAAI;AACnC,UAAQ,WAAW;AACrB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
CREATE TABLE `draft_ticket_states` (
|
|
2
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
3
|
+
`project_id` text NOT NULL,
|
|
4
|
+
`artifact_scope_id` text NOT NULL,
|
|
5
|
+
`title_draft` text NOT NULL,
|
|
6
|
+
`description_draft` text NOT NULL,
|
|
7
|
+
`proposed_repo_id` text,
|
|
8
|
+
`confirmed_repo_id` text,
|
|
9
|
+
`proposed_ticket_type` text,
|
|
10
|
+
`proposed_acceptance_criteria` text NOT NULL,
|
|
11
|
+
`wizard_status` text NOT NULL,
|
|
12
|
+
`split_proposal_summary` text,
|
|
13
|
+
`source_ticket_id` integer,
|
|
14
|
+
`target_branch` text,
|
|
15
|
+
`created_at` text NOT NULL,
|
|
16
|
+
`updated_at` text NOT NULL,
|
|
17
|
+
FOREIGN KEY (`project_id`) REFERENCES `projects`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
18
|
+
FOREIGN KEY (`proposed_repo_id`) REFERENCES `repositories`(`id`) ON UPDATE no action ON DELETE set null,
|
|
19
|
+
FOREIGN KEY (`confirmed_repo_id`) REFERENCES `repositories`(`id`) ON UPDATE no action ON DELETE set null
|
|
20
|
+
);
|
|
21
|
+
--> statement-breakpoint
|
|
22
|
+
CREATE INDEX `idx_drafts_project_id` ON `draft_ticket_states` (`project_id`);--> statement-breakpoint
|
|
23
|
+
CREATE TABLE `execution_attempts` (
|
|
24
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
25
|
+
`session_id` text NOT NULL,
|
|
26
|
+
`attempt_number` integer NOT NULL,
|
|
27
|
+
`status` text NOT NULL,
|
|
28
|
+
`prompt_kind` text,
|
|
29
|
+
`prompt` text,
|
|
30
|
+
`pty_pid` integer,
|
|
31
|
+
`started_at` text NOT NULL,
|
|
32
|
+
`ended_at` text,
|
|
33
|
+
`end_reason` text,
|
|
34
|
+
FOREIGN KEY (`session_id`) REFERENCES `execution_sessions`(`id`) ON UPDATE no action ON DELETE cascade
|
|
35
|
+
);
|
|
36
|
+
--> statement-breakpoint
|
|
37
|
+
CREATE INDEX `idx_execution_attempts_session_id` ON `execution_attempts` (`session_id`);--> statement-breakpoint
|
|
38
|
+
CREATE INDEX `idx_execution_attempts_session_attempt` ON `execution_attempts` (`session_id`,`attempt_number`);--> statement-breakpoint
|
|
39
|
+
CREATE TABLE `execution_sessions` (
|
|
40
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
41
|
+
`ticket_id` integer NOT NULL,
|
|
42
|
+
`project_id` text NOT NULL,
|
|
43
|
+
`repo_id` text NOT NULL,
|
|
44
|
+
`agent_adapter` text DEFAULT 'codex' NOT NULL,
|
|
45
|
+
`worktree_path` text,
|
|
46
|
+
`adapter_session_ref` text,
|
|
47
|
+
`status` text NOT NULL,
|
|
48
|
+
`planning_enabled` integer NOT NULL,
|
|
49
|
+
`plan_status` text DEFAULT 'not_requested' NOT NULL,
|
|
50
|
+
`plan_summary` text,
|
|
51
|
+
`current_attempt_id` text,
|
|
52
|
+
`latest_requested_change_note_id` text,
|
|
53
|
+
`latest_review_package_id` text,
|
|
54
|
+
`queue_entered_at` text,
|
|
55
|
+
`started_at` text,
|
|
56
|
+
`completed_at` text,
|
|
57
|
+
`last_heartbeat_at` text,
|
|
58
|
+
`last_summary` text,
|
|
59
|
+
FOREIGN KEY (`ticket_id`) REFERENCES `tickets`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
60
|
+
FOREIGN KEY (`project_id`) REFERENCES `projects`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
61
|
+
FOREIGN KEY (`repo_id`) REFERENCES `repositories`(`id`) ON UPDATE no action ON DELETE cascade
|
|
62
|
+
);
|
|
63
|
+
--> statement-breakpoint
|
|
64
|
+
CREATE INDEX `idx_execution_sessions_ticket_id` ON `execution_sessions` (`ticket_id`);--> statement-breakpoint
|
|
65
|
+
CREATE INDEX `idx_execution_sessions_project_status_queue` ON `execution_sessions` (`project_id`,`status`,"queue_entered_at" asc,"started_at" asc);--> statement-breakpoint
|
|
66
|
+
CREATE TABLE `projects` (
|
|
67
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
68
|
+
`slug` text NOT NULL,
|
|
69
|
+
`name` text NOT NULL,
|
|
70
|
+
`color` text,
|
|
71
|
+
`agent_adapter` text DEFAULT 'codex' NOT NULL,
|
|
72
|
+
`execution_backend` text DEFAULT 'docker' NOT NULL,
|
|
73
|
+
`disabled_mcp_servers` text DEFAULT '[]' NOT NULL,
|
|
74
|
+
`automatic_agent_review` integer DEFAULT false NOT NULL,
|
|
75
|
+
`automatic_agent_review_run_limit` integer DEFAULT 1 NOT NULL,
|
|
76
|
+
`default_review_action` text DEFAULT 'direct_merge' NOT NULL,
|
|
77
|
+
`default_target_branch` text,
|
|
78
|
+
`preview_start_command` text,
|
|
79
|
+
`pre_worktree_command` text,
|
|
80
|
+
`post_worktree_command` text,
|
|
81
|
+
`draft_analysis_model` text,
|
|
82
|
+
`draft_analysis_reasoning_effort` text,
|
|
83
|
+
`ticket_work_model` text,
|
|
84
|
+
`ticket_work_reasoning_effort` text,
|
|
85
|
+
`max_concurrent_sessions` integer DEFAULT 4 NOT NULL,
|
|
86
|
+
`created_at` text NOT NULL,
|
|
87
|
+
`updated_at` text NOT NULL
|
|
88
|
+
);
|
|
89
|
+
--> statement-breakpoint
|
|
90
|
+
CREATE UNIQUE INDEX `projects_slug_unique` ON `projects` (`slug`);--> statement-breakpoint
|
|
91
|
+
CREATE TABLE `repositories` (
|
|
92
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
93
|
+
`project_id` text NOT NULL,
|
|
94
|
+
`name` text NOT NULL,
|
|
95
|
+
`path` text NOT NULL,
|
|
96
|
+
`target_branch` text,
|
|
97
|
+
`setup_hook` text,
|
|
98
|
+
`cleanup_hook` text,
|
|
99
|
+
`validation_profile` text NOT NULL,
|
|
100
|
+
`extra_env_allowlist` text NOT NULL,
|
|
101
|
+
`created_at` text NOT NULL,
|
|
102
|
+
`updated_at` text NOT NULL,
|
|
103
|
+
FOREIGN KEY (`project_id`) REFERENCES `projects`(`id`) ON UPDATE no action ON DELETE cascade
|
|
104
|
+
);
|
|
105
|
+
--> statement-breakpoint
|
|
106
|
+
CREATE INDEX `idx_repositories_project_id` ON `repositories` (`project_id`);--> statement-breakpoint
|
|
107
|
+
CREATE TABLE `requested_change_notes` (
|
|
108
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
109
|
+
`ticket_id` integer NOT NULL,
|
|
110
|
+
`review_package_id` text,
|
|
111
|
+
`author_type` text NOT NULL,
|
|
112
|
+
`body` text NOT NULL,
|
|
113
|
+
`created_at` text NOT NULL,
|
|
114
|
+
FOREIGN KEY (`ticket_id`) REFERENCES `tickets`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
115
|
+
FOREIGN KEY (`review_package_id`) REFERENCES `review_packages`(`id`) ON UPDATE no action ON DELETE set null
|
|
116
|
+
);
|
|
117
|
+
--> statement-breakpoint
|
|
118
|
+
CREATE INDEX `idx_requested_change_notes_ticket_id` ON `requested_change_notes` (`ticket_id`,"created_at" desc);--> statement-breakpoint
|
|
119
|
+
CREATE TABLE `review_packages` (
|
|
120
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
121
|
+
`ticket_id` integer NOT NULL,
|
|
122
|
+
`session_id` text NOT NULL,
|
|
123
|
+
`diff_ref` text NOT NULL,
|
|
124
|
+
`commit_refs` text NOT NULL,
|
|
125
|
+
`change_summary` text NOT NULL,
|
|
126
|
+
`validation_results` text NOT NULL,
|
|
127
|
+
`remaining_risks` text NOT NULL,
|
|
128
|
+
`created_at` text NOT NULL,
|
|
129
|
+
FOREIGN KEY (`ticket_id`) REFERENCES `tickets`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
130
|
+
FOREIGN KEY (`session_id`) REFERENCES `execution_sessions`(`id`) ON UPDATE no action ON DELETE cascade
|
|
131
|
+
);
|
|
132
|
+
--> statement-breakpoint
|
|
133
|
+
CREATE INDEX `idx_review_packages_ticket_id` ON `review_packages` (`ticket_id`,"created_at" desc);--> statement-breakpoint
|
|
134
|
+
CREATE TABLE `review_runs` (
|
|
135
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
136
|
+
`ticket_id` integer NOT NULL,
|
|
137
|
+
`review_package_id` text NOT NULL,
|
|
138
|
+
`implementation_session_id` text NOT NULL,
|
|
139
|
+
`trigger_source` text DEFAULT 'manual' NOT NULL,
|
|
140
|
+
`status` text NOT NULL,
|
|
141
|
+
`adapter_session_ref` text,
|
|
142
|
+
`prompt` text,
|
|
143
|
+
`report` text,
|
|
144
|
+
`failure_message` text,
|
|
145
|
+
`created_at` text NOT NULL,
|
|
146
|
+
`updated_at` text NOT NULL,
|
|
147
|
+
`completed_at` text,
|
|
148
|
+
FOREIGN KEY (`ticket_id`) REFERENCES `tickets`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
149
|
+
FOREIGN KEY (`review_package_id`) REFERENCES `review_packages`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
150
|
+
FOREIGN KEY (`implementation_session_id`) REFERENCES `execution_sessions`(`id`) ON UPDATE no action ON DELETE cascade
|
|
151
|
+
);
|
|
152
|
+
--> statement-breakpoint
|
|
153
|
+
CREATE INDEX `idx_review_runs_ticket_id` ON `review_runs` (`ticket_id`,"created_at" desc);--> statement-breakpoint
|
|
154
|
+
CREATE TABLE `session_logs` (
|
|
155
|
+
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
156
|
+
`session_id` text NOT NULL,
|
|
157
|
+
`line` text NOT NULL,
|
|
158
|
+
`created_at` text NOT NULL,
|
|
159
|
+
FOREIGN KEY (`session_id`) REFERENCES `execution_sessions`(`id`) ON UPDATE no action ON DELETE cascade
|
|
160
|
+
);
|
|
161
|
+
--> statement-breakpoint
|
|
162
|
+
CREATE INDEX `idx_session_logs_session_id` ON `session_logs` (`session_id`,"id" asc);--> statement-breakpoint
|
|
163
|
+
CREATE TABLE `structured_events` (
|
|
164
|
+
`id` text PRIMARY KEY NOT NULL,
|
|
165
|
+
`occurred_at` text NOT NULL,
|
|
166
|
+
`entity_type` text NOT NULL,
|
|
167
|
+
`entity_id` text NOT NULL,
|
|
168
|
+
`event_type` text NOT NULL,
|
|
169
|
+
`payload` text NOT NULL
|
|
170
|
+
);
|
|
171
|
+
--> statement-breakpoint
|
|
172
|
+
CREATE INDEX `idx_events_entity` ON `structured_events` (`entity_type`,`entity_id`,"occurred_at" desc);--> statement-breakpoint
|
|
173
|
+
CREATE TABLE `tickets` (
|
|
174
|
+
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
175
|
+
`project_id` text NOT NULL,
|
|
176
|
+
`repo_id` text NOT NULL,
|
|
177
|
+
`artifact_scope_id` text NOT NULL,
|
|
178
|
+
`status` text NOT NULL,
|
|
179
|
+
`title` text NOT NULL,
|
|
180
|
+
`description` text DEFAULT '' NOT NULL,
|
|
181
|
+
`ticket_type` text NOT NULL,
|
|
182
|
+
`acceptance_criteria` text DEFAULT '[]' NOT NULL,
|
|
183
|
+
`working_branch` text,
|
|
184
|
+
`target_branch` text NOT NULL,
|
|
185
|
+
`linked_pr` text,
|
|
186
|
+
`session_id` text,
|
|
187
|
+
`archived_at` text,
|
|
188
|
+
`created_at` text NOT NULL,
|
|
189
|
+
`updated_at` text NOT NULL,
|
|
190
|
+
FOREIGN KEY (`project_id`) REFERENCES `projects`(`id`) ON UPDATE no action ON DELETE cascade,
|
|
191
|
+
FOREIGN KEY (`repo_id`) REFERENCES `repositories`(`id`) ON UPDATE no action ON DELETE cascade
|
|
192
|
+
);
|
|
193
|
+
--> statement-breakpoint
|
|
194
|
+
CREATE INDEX `idx_tickets_project_id` ON `tickets` (`project_id`);--> statement-breakpoint
|
|
195
|
+
CREATE INDEX `idx_tickets_session_id` ON `tickets` (`session_id`);
|