Show what the server holds in video 3 without naming how it stores it #221

Merged
cruelacid merged 2 commits from worktree-nec-129-no-schema into main 2026-09-30 08:24:22 +01:00
Owner

Video 3 ("What the server cannot see") queried the shard with sqlite3 server.db against named tables and columns, so the video would have published the closed server's schema and storage engine. It no longer does.

  • What the terminal shows is a directory of plain files holding exactly what the take's shard stores for the folder: its sealed name (folder-name), and each document's stored bytes under the hash it is filed by (stored/<hash>, with note a copy of the note's). Only cat, xxd, ls and grep appear on screen.
  • The claim is checked before it is filmed: the export fails the take if the folder's name, the note's title or its body is anywhere in it. The narration now claims only what is searched, "everything it holds for this folder", and no longer says "database".
  • Settings tabs are opened through settingsTab, which empties the settings window's search first. The window takes the keyboard when it opens, and stray keystrokes typed on the machine during a take ("so", then "t") twice filtered the tab list and failed the portrait take.

Verified: both formats of video 3 re-recorded and checked frame by frame; nothing on screen or in the subtitles names a database, table or column. pnpm test, pnpm -r typecheck and pnpm lint pass locally.

Task: NEC-129

Changelog

NONE

🤖 Generated with Claude Code

https://claude.ai/code/session_01StURdiv33xnMfE2XRyg8Lt

Video 3 ("What the server cannot see") queried the shard with `sqlite3 server.db` against named tables and columns, so the video would have published the closed server's schema and storage engine. It no longer does. - **What the terminal shows** is a directory of plain files holding exactly what the take's shard stores for the folder: its sealed name (`folder-name`), and each document's stored bytes under the hash it is filed by (`stored/<hash>`, with `note` a copy of the note's). Only `cat`, `xxd`, `ls` and `grep` appear on screen. - **The claim is checked before it is filmed**: the export fails the take if the folder's name, the note's title or its body is anywhere in it. The narration now claims only what is searched, "everything it holds for this folder", and no longer says "database". - **Settings tabs** are opened through `settingsTab`, which empties the settings window's search first. The window takes the keyboard when it opens, and stray keystrokes typed on the machine during a take ("so", then "t") twice filtered the tab list and failed the portrait take. Verified: both formats of video 3 re-recorded and checked frame by frame; nothing on screen or in the subtitles names a database, table or column. `pnpm test`, `pnpm -r typecheck` and `pnpm lint` pass locally. Task: NEC-129 ## Changelog NONE 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01StURdiv33xnMfE2XRyg8Lt
The terminal shots queried the shard's SQLite database by table and
column, so the video would have published the server's schema and its
storage engine, which a closed server has no reason to give away. The
terminal now works in a directory of plain files holding exactly what
the take's shard stores for the folder — its sealed name, and each
document's stored bytes under the hash it is filed by — and looks at
them only with cat, xxd, ls and grep. The export fails the take if the
folder's name, the note's title or its body is in any of it, and the
narration now claims only what is searched: everything held for this
folder.

Task: NEC-129

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01StURdiv33xnMfE2XRyg8Lt
Empty the settings search before opening a settings tab in a take
All checks were successful
Release note / release-note (pull_request) Successful in 13s
CI / build (pull_request) Successful in 4m55s
CI / e2e (pull_request) Successful in 5m57s
CI / promote (pull_request) Has been skipped
CI / build (push) Successful in 5m7s
CI / e2e (push) Successful in 5m56s
CI / promote (push) Successful in 31s
7d32590638
The settings window takes the keyboard when it opens, with its search
focused, so anything typed on the machine during a take lands there. A
stray "so", then "t", filtered the tab list to search results, and the
click on "Nectenda" opened the plugin list instead: video 3's portrait
take failed twice at the invitation. settingsTab empties the search and
lets go of it before clicking.

Task: NEC-129

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01StURdiv33xnMfE2XRyg8Lt
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Nectenda/nectenda!221
No description provided.