# Inbox — cross-project capture buffer Raw, untriaged ideas and bugs for **any** repo, captured from anywhere so they stop scattering into phone notes. `/capture` appends here; `/triage`, run inside a project, drains that project's items into its `AGENTS.md` (`## Current state`) or `ROADMAP.md`. This buffer is upstream of every repo's ROADMAP — nothing here is owned or scheduled until triaged. **Line format** — one item per line: ``` - [ ] (project) [type][Pn] note — optional context, YYYY-MM-DD ``` - `project` — the target repo's folder name (e.g. `relay`), or `standards` for this repo, or `?` if unsure. For an idea that would be a **brand-new repo** (no folder exists yet), use `new` — or `new:working-name` if you have a name in mind. - `type` — `bug` | `feature` | `idea` | `skill` | `agent` | `project` | `chore` (`project` = a potential new repo; handled by the new-repo bootstrap, not `/triage`). - `Pn` — priority `P0` (drop-everything) … `P3` (someday). Default `P2` if unspecified. - `[ ]` unchecked = untriaged; `/triage` removes items once they're routed. Example: ``` - [ ] (relay) [bug][P1] health-check probes the wrong port after the bind refactor — found while testing, 2026-06-14 ``` --- ## Items - [ ] (ten31-transcripts) [chore][P1] Mini-retrofit — repo is an active Xcode/Swift app but has NO `.claude/` dir. Do, in order: (1) add the portable inbox-check line to `AGENTS.md`, tagged `(ten31-transcripts)`; (2) create `.claude/settings.json` (at minimum `{}`) so shared project config/hooks become committable; (3) bring `.gitignore` to the canonical block in `standards/portability.md` → "What git tracks" — the deny-by-default `.claude/*` + allow-list, **plus** `.env.*` and `!.env.example` (both currently missing); (4) judgment call — only if the flat `docs/NN_*.md` files are genuinely subsystem-scoped, reorganize them into `docs/guides/` + `.claude/rules/` relative symlinks with one index line each in AGENTS.md. The `CLAUDE.md → AGENTS.md` symlink is already correct; no secrets are currently tracked. Full context: `standards` ROADMAP item 6 residuals — from the cross-repo git-hygiene audit, 2026-06-14 - [ ] (standards) [feature][P2] API automation for Gitea in /new-project — automate the currently-manual Gitea create/publish gate via the Gitea API, 2026-06-14 - [ ] (ten31-transcripts) [feature][P2] Add Jitsi to ten31-transcripts, 2026-06-14 - [ ] (recap) [feature][P2] Recaps (or a recaps relay) should send a daily digest via SMTP, 2026-06-14 - [ ] (new:embedded-links-reader) [project][P2] Embedded-links reader & summarizer — give the app an article/blog URL; it scrapes the links the author embedded (the ones you don't want to visit in the moment), reads them, and summarizes them, 2026-06-14 - [ ] (new:portfolio-scraper) [project][P2] Portfolio-company scraper — tracks portfolio companies for podcasts, social tweets, founder appearances, news, etc. and delivers a digest via email or another interface, 2026-06-14 - [ ] (recap) [bug][P2] Mobile gets stuck and can't scroll back to top — recaps.cc transcript view. ATTEMPTED in app 0.2.157 (-webkit-overflow-scrolling:touch + overscroll-behavior:contain on .chunks-scroll); UNVERIFIED — needs on-iPad check, plus a screen recording if it persists, 2026-06-14 - [ ] (ten31-database) [chore][P2] Reconcile AGENTS.md networking facts: the doc says the CRM is reached "on the LAN or over Tailscale," but it's actually served over ClearNet (StartTunnel) with app-level user auth, and Tailscale is NOT in use. Fix the access/networking wording — surfaced during standards placement-guide verification, 2026-06-15 - [ ] (recap-relay) [chore][P3] AGENTS.md endpoint list mis-describes POST /relay/analyze as "{ transcript, … } → topic sections JSON". The actual route (server/routes/analyze.js) takes a free-form { prompt: string } and returns the standard envelope { result: { text } }; "topic sections JSON" is only what the recap-app caller asks for in its prompt. Fix the request-shape wording to { prompt } — surfaced resolving Recaps' Daily Digest synthesis contract (Q4), 2026-06-15 - [ ] (ten31-database) [bug][P2] Service package icon on StartOS is oversized/zoomed in and needs a better rendering — research Start9 icon spec, source or provide base ten31 logo, and produce a correctly sized icon before the next s9pk upload, 2026-06-16 - [ ] (keysat) [chore][P2] Design-contract cleanup from the 2026-06-16 design-checker audit — full detail in keysat ROADMAP "Design (contract conformance)" + design/DESIGN.md. (1) Fix 3 blockers (code violates the contract's named "never" rules on live CTAs): (a) gold-as-fill on admin `.featured-pill-toggle.on` (licensing-service-startos/licensing-service/web/index.html:418) → navy fill or gold border+text; (b) gold-as-fill on admin `#tier-banner-cta` upgrade button (web/index.html:537-542) → navy primary; (c) primary buy CTA pill radius 999px (keysat-xyz-landing/index.html:384-385) → r-md 8px. (2) Structural: consolidate the 4 surfaces' inlined CSS-variable copies onto canonical design/brand/palette.css (import it, drop private copies). (3) Token gaps (tokenize-vs-snap): 14px landing card radius; wordmark letter-spacing 0.30 vs 0.28em (add letterSpacing.wordmark token); semantic badge text one-offs (#205c47/#7a5814/#8a2828); hardcoded syntax-highlight hex → var(); admin #f6f1e7 off-token. Re-run design-checker after to confirm, 2026-06-16 - [ ] (ten31-database) [feature][P2] Matrix-bridge intake for the fundraising grid — use the matrix-bridge repo's pattern to listen on a dedicated ten31-database Matrix room; send a message (with optional business card photo) and a local LLM via Spark Control parses it into the fundraising grid schema, auto-creates the investor entity + contact row; for existing investors, send a meeting note and it appends an interaction log entry; approval gate: the bot replies in Matrix with the proposed add/edit, user approves/rejects/edits in-thread before the write commits, 2026-06-16 - [ ] (ten31-database) [idea][P2] have explorer agent reply with what web UI functionality is visible only to admin vs to all users — 2026-06-16 - [ ] (ten31-signal-engine) [chore][P2] Run full-eval on the signal engine folder — the full evaluation suite (evaluator, security-auditor, exerciser, doc-auditor, spec-checker), 2026-06-16 - [ ] (?) [idea][P2] run janitor agent on all projects — via matrix, 2026-06-16 - [ ] (keysat) [chore][P2] does the keysat registry need to save every iteration of new versions of keysat software as we upgrade it? research agent needs to investigate — via matrix, 2026-06-16 - [ ] (standards) [chore][P2] we previously discussed a docs-reader agent whose idea i think was to see if a fresh user could read a software documentation and effectively install and run the software out of the box. i would like to build this specifically for keysat, since that is the software that's going to be in the wild. so, maybe this should be a subagent just for the keysat repo, for now. — via matrix, 2026-06-16 - [ ] (keysat) [chore][P2] Adversarial review of keysat- what vulnerabilities, customer complaints, feature gaps, might a new user find. — via matrix, 2026-06-16 - [ ] (keysat) [chore][P2] run spec-checker agent for listing to start9 community registry — via matrix, 2026-06-16