tickets
All repositories: gitoria
2.7 KB
# Mission 003 (old 004) — tickets: required author, 400 on invalid JSON, list lines in import (ticket #15)One-shot worker. Architect (Claude Code on Byrodin) verifies your report.Read first: `/CONTAINERS/projects/antcolony/README.md`, `STATUS.md`, and the app's own`README.md` + `STATUS.md` in `loreana:/media/STORAGE/projects/tickets.worldapi.org`.Ticket: http://100.77.141.84:8350/tickets/15 (read it via `GET /api/tickets/15`). Previous mission on the same app: `missions/002-tickets-review-fixes.md`.## Where- Host Loreana (`ssh loreana`, fish login shell → `bash -c '…'` or script files).- App: `/media/STORAGE/projects/tickets.worldapi.org` (vendored `bin/hybriel` + `plugins/`).- Hybriel repo `/media/STORAGE/projects/hybriel` is READ ONLY.## Scope (creator decisions 2026-09-24)1. `author` is REQUIRED on every POST (tickets, comments, state) → 400 `{error, field:"author"}`when missing/empty. Update the web forms accordingly: until ident exists the forms send a fixedauthor `creator` (no input field). Existing data unchanged.2. Invalid JSON body → 400 `{error}` WITHOUT source paths, via a hand-written check before`JSON.parse` (Hybriel has no soft parse, hybriel ticket #12). Keep it small and documented as aworkaround to remove once #12 is fixed.3. Importer keeps Markdown list lines (`- `, `* `, `1. `) as separate lines; ordinary wrapped linesare still joined. Rendered on the ticket page as a list or at least as separate lines.4. No time zone label on times (decided, nothing to do).Extend the gate for all of it.## The running serverIt holds LIVE data now (the creator uses it). Before touching storage: copy `storage/` to`.scratch/storage-backup-<timestamp>/`. After your changes restart the dev server on 8350(kill only the PID in `server.pid`, start again with setsid/nohup, update `server.pid`), thenverify all tickets (#1–#15 at time of writing) and their histories are all still there via the API.## Rules- No git. Only kill PIDs you started or the PID in `server.pid`. Clean up headless Chromes(`--disable-gpu`, GPU is wedged). Scratch in `.scratch/`.- A test is the whole process: real browser + API, observe the result.- Hybriel bugs: don't fix them in the repo; report with repro.- Update the app's `README.md` / `STATUS.md` (concise).- Another worker may be building ident in `/media/STORAGE/projects/ident.worldapi.org` (port 8351)— don't touch that folder; your gate keeps using :8352.- Do not POST to the live server except for the final verification reads (GET). The architect files tickets.## Report (final answer, this structure)```## Done## Verified (each: command run + observed output)## Not verified / open## Hybriel issues (repro, observed, expected)## Questions for the creator## Running (URL, PID, log path)```
Branches
- mainmain branch
Latest commits
- 38f9d10ftickets: Hybriel master 06617221 (plugin allocators 3a781359 + 413f60e4, mpackdb 2cb7ae5e, http1 773de63e); gate 249/0, connect 60/0mre
- d3db6139tickets: Hybriel master 190aa11d (fc838894 GC correctness, #126 closure scopes, #127); gate 249/0, connect 60/0mre
- bce182e3tickets: Hybriel master 7eea0d32 (#126 memory, #48 lambda copies its argument); migrate.hl lambdas take &logmre
- 4137be0fantcolony#40: mission references point to the moved missionsmre
- 9bfba36aantcolony#40: history (LOG.md), worker briefs (missions/) and reports moved here from antcolony, numbered per project; old numbers in antcolony docs/mission-map.mdmre
- c7bd2645tickets: Hybriel master 73267707 (#122 fixed); compactNow workaround removed (#110 covered)mre
- 2ab91ee9tickets: gate checks rows appear once (session sync); re-vendor to ff51cf46 stopped on hybriel#122, stays 837fe120mre
- e01c2b1dtickets#24: installable app (manifest, service worker, offline list), own icon; gate waits for the hello's pongmre
- 752fbb7fdeploy.sh: back up live storage/.sessions/.env before every deploy (newest 5 kept)mre
- 38bdd5e4deploy.sh: never send .git or .gitignore to Byrodinmre
- f12fa1bcState of 2026-09-27, before the move to gitoriamre