Commit

f55ad8b

Round 2, all on Q4. Selective fits well, because Supabase is already a separate copy: the static site is built from Supabase rows, not from the vault. Q7 Unit of publish: per note. "Publish" copies that note's current source into its Supabase row, and the row becomes the…
dt.in.thThai Pangsakulyanont
Q7, Q8, 10, 11. Agree Q9. Still needed. public: true is the "desired state" so to speak. To unpublish I would set public: false and the back office should slate it for unpublishing. Btw, by starting anew I mean start a new Git history. On cutover we merge main in with -s…
Got it. public: true = desired state, Supabase row = actual state. And the checkout is now on an orphan branch next, with the old code in ./legacy. At cutover: merge main into next with -s ours, then fast-forward main. Round 3: Q12 Reconcile UX: the backoffice shows a plan,…
Round 4, ops and edges: Q18 GitHub App: one app, installed on the vault repo and dtinth/dt.in.th, with contents read/write only. Its private key and the Supabase service key live in a mise env file outside the vault, so agents working in the vault never see them. -> Yes. Q19…
dt.in.thThai Pangsakulyanont
Last round, I think: Q25 Distribution: the CLI is published as a compiled Bun binary on GitHub Releases of this repo, and the vault pins it in mise.toml via the github: backend. pitchfork.toml in the vault runs notes serve. -> Yes. Q26 Cutover check: before switching,…
Fair. Bundled JS (bun build --target=bun, #!/usr/bin/env bun, bun via mise), with backoffice assets inlined so it's one file. If shiki wasm won't inline, ship a tarball instead. Writing docs/SPEC.md now.
@dtinth docs/SPEC.md is done, committed as the first commit on (local only). It covers the 3 layers, plan/apply, the frontend contract, sync, secrets and cutover. Push to origin so you can read it there?
Well, you don't have push access right now, so I will have to grant you access. But I will do that later. For now, please work on the local copy. But are you ready to start prototyping in the meantime? Maybe you can see if you can get Bun building and bundling and compiling to…
@dtinth Prototype works, committed on next (00f1eea, local). bun run build makes dist/notes.js: one 10.8 MB file with a #!/usr/bin/env bun shebang. Copied alone (no node_modules) next to an example vault, it indexes notes (private/listed/unlisted, sha256 versions) and builds…
@dtinth Done (69db93a, local). Slight change of plan: no repacking needed. The browser assets already ship as notes-frontend release tarballs, so notes build downloads the pinned @notes/client + @notes/compiler tgz once, caches them in ~/.cache/notes, and copies compiler/,…
Yes please. It's already in ghq. Access to both repos granted. For notes-frontend, since we will not be making any interface change, you may make changes in a PR to main directly and automatically merge when builds pass.
I took a look. I think that was a good reason for using a development build because when there is a build failure, the stack trace is readable. Is the dev notice suppressable without hijacking console?
@dtinth Yes, without hijacking console. Only the esm-browser build prints that notice. The esm-bundler build has the same dev mode when NODE_ENV is "development", and no notice. PR #2 updated: alias to vue.runtime.esm-bundler.js and define NODE_ENV=development. Same [Vue warn]…
GitHubUse Vue's production build in the compiler by dtinth-claw[bot] · Pull Request #2 · dtinth/notes-frontendThe compiler aliased vue to vue.runtime.esm-browser.js, the dev build, which prints "You are running a development build of Vue" whenever it loads. This shows up every time the compiler r...