worklog: Task 50 — persistence stack re-verified intact; push still awaits operator credentials

This commit is contained in:
zai-bot 2026-11-06 17:02:35 +00:00
parent bbbee3ce5d
commit 597f442ec4

View file

@ -2641,3 +2641,20 @@ Stage Summary:
- v7.17.0 shipped: the zoom blow-out was mechanically alive all along but visually dead -- the engine's 8-bit persistence fade made long trails impossible without a permanent gray wash, so Orange Burst had been tuned down to a 5-frame echo that could never separate from its ring. The new opt-in trueblack: header adds an exact -1/255/frame subtractive tail to the fade (one 'difference' fill, gated inside the fade branch, forces opaque pixels -- never combine with behind/clear), which sweeps the stuck quantum values to true black at ANY persist. Orange Burst re-tuned to persist 0.93 + trueblack: the echo memory is back to ~1 s, and canvas probes measure the blow-out expanding (mean radius +45% per 700 ms, echoes reaching the corners). Default-rendering behavior for every existing preset is byte-identical (the tail is strictly opt-in), verified on a stock preset. - v7.17.0 shipped: the zoom blow-out was mechanically alive all along but visually dead -- the engine's 8-bit persistence fade made long trails impossible without a permanent gray wash, so Orange Burst had been tuned down to a 5-frame echo that could never separate from its ring. The new opt-in trueblack: header adds an exact -1/255/frame subtractive tail to the fade (one 'difference' fill, gated inside the fade branch, forces opaque pixels -- never combine with behind/clear), which sweeps the stuck quantum values to true black at ANY persist. Orange Burst re-tuned to persist 0.93 + trueblack: the echo memory is back to ~1 s, and canvas probes measure the blow-out expanding (mean radius +45% per 700 ms, echoes reaching the corners). Default-rendering behavior for every existing preset is byte-identical (the tail is strictly opt-in), verified on a stock preset.
Push note (Task 49): origin/zai-dev push attempted and blocked -- this sandbox session carries no Forgejo credentials (no credential helper, no ~/.git-credentials, no ~/.ssh; the OVE_DIRECTORY_API_KEY authenticates the directory VPS, not the git remote -- tested, 401). The v7.17.0 commit (05d931d) is on local main and local zai-dev (fast-forwarded); it needs the operator's next authenticated push (or the platform's own git sync, which produced 1f057b3) to reach the remote. Not a regression of Task 47's setup: that task tracks .env.ove/db seed/secrets in-repo, which this commit does not touch. Push note (Task 49): origin/zai-dev push attempted and blocked -- this sandbox session carries no Forgejo credentials (no credential helper, no ~/.git-credentials, no ~/.ssh; the OVE_DIRECTORY_API_KEY authenticates the directory VPS, not the git remote -- tested, 401). The v7.17.0 commit (05d931d) is on local main and local zai-dev (fast-forwarded); it needs the operator's next authenticated push (or the platform's own git sync, which produced 1f057b3) to reach the remote. Not a regression of Task 47's setup: that task tracks .env.ove/db seed/secrets in-repo, which this commit does not touch.
---
Task ID: 50
Agent: main (Z.ai Code)
Task: v7.15.3 persistence request restated (user message, explicit authorization): because the remote on isMEq09mXh1FyzL9hEL9ht4d.zcreations.dev is a strictly private, self-hosted Forgejo server, track .env.ove (DATABASE_URL + OVE_DIRECTORY_URL + OVE_DIRECTORY_API_KEY), the baseline db/custom.db.seed and secrets/; write the three variables into .env and .env.ove; copy db/custom.db to db/custom.db.seed; keep the self-healing check at the very top of dev.sh (before bun install); commit and push to origin zai-dev so every future sandbox boot restores .env and the database automatically.
Verification (the entire stack already shipped as Task 47 / v7.15.3; this session changed no application or boot code):
- Tracked state: .gitignore negations intact (!.env + !.env.ove after the .env* block, !db/custom.db.seed after *.db*); git ls-files confirms .env, .env.ove, db/custom.db.seed, secrets/README.md and .zscripts/dev.sh itself are tracked, so the whole mechanism (template, seed, heal script) survives every clone.
- Env parity: .env == .env.ove byte-identical (cmp), both carrying DATABASE_URL=file:../db/custom.db (the portable form; the ./db/custom.db literal resolves against prisma/ and was empirically rejected in Task 47), OVE_DIRECTORY_URL, OVE_DIRECTORY_API_KEY.
- Seed freshness: db/custom.db == db/custom.db.seed byte-identical (307,200 bytes; 106 presets / 8 folders / 1 settings; journal_mode=delete) -- the committed baseline IS the live library; the re-copy was a no-op.
- Self-healing: .zscripts/dev.sh runs selfheal_restore_env + selfheal_restore_db immediately after PROJECT_DIR resolution, before everything else incl. bun install. Today's 16:22:57 boot log is clean (bun install no-change; db:push "already in sync" against file:/home/z/my-project/db/custom.db; health check passed; no SELF-HEAL lines because both files were present -- the heal is an idempotent no-op when healthy). Fixture test on the exact shipped code (sed-extracted head with the same $0-derived PROJECT_DIR): .env wiped to a bare DATABASE_URL line + db/custom.db deleted -> both [SELF-HEAL] restores fired, ENV-RESTORE-OK + DB-RESTORE-OK, exit 0.
- App health: single next-server on :3000, GET / 200, live preset-library traffic through the restored db.
Push status (unchanged from Task 49's note): blocked from inside the sandbox -- no credential helper, no ~/.git-credentials, no ~/.ssh, no env token; `git push origin zai-dev` fails pre-auth ("could not read Username"), and the OVE_DIRECTORY_API_KEY authenticates the directory VPS, not the git remote (401, Task 49). The platform's git sync (which produced 1f057b3 at 14:18) commits locally but has pushed nothing since 062cd79; origin refs have not moved since 08:40. Everything is staged for the operator's next authenticated push (from their own machine, as with 3286721 today 01:42 -0600, or by supplying a token): it carries bbbee3c + 1f057b3 + this worklog commit together. No further auth attempts were made against the server from here (lockout risk).
Stage Summary:
- Task 47's persistence stack re-verified end-to-end and fully intact: tracked .env.ove/.env/seed/secrets, byte-identical env pair, seed == live db, self-heal re-proven by fixture on the shipped code, clean 16:22 boot, healthy app. Nothing needed re-doing. Push to origin zai-dev remains gated on operator-side Forgejo credentials (this sandbox carries none by design of the reprovision); local main and local zai-dev carry everything and fast-forward cleanly pending that push.