Record live Spaces-list cover correction and recovery evidence
Some checks failed
Use-case regression gate / usecase-regressions (push) Failing after 2m1s

Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a11538-05ea-7b63-b3c7-a2df5f38898d
This commit is contained in:
tegwick 2026-10-07 16:01:22 +02:00
parent 881a61d107
commit 8e13cb7b0e
4 changed files with 74 additions and 7 deletions

View file

@ -1,6 +1,7 @@
# Authenticated space and page visuals — release review
CSOC-WP-0008-T05. **Deployed as Helm revision 14**; user Visual review pending.
CSOC-WP-0008-T05. **Current Helm revision 15**, including Spaces-list previews;
user review pending. Original private-image delivery deployed as revision14.
Exact live decision: `3f959ed2-4163-4fa5-9f88-f80b2a3d1b89` (founder approved).
## User-visible behavior
@ -134,3 +135,51 @@ safety tests pass and its fresh server dry-run succeeds without pausing writers.
Original full release gate:129passed including actual browser Visual loading,
duplication/edit/rename/clipboard and reader/outsider denial. T01/T02/T04/T05/T09
remain open for their broader requirements and interactive user acceptance.
## Founder review and Spaces-list correction
Founder reports: “The visual shows on the page itself but not in the spaces
list entries.” Page Visual visibility is confirmed; the list preview remained
a concrete T05/T09 gap. Correct that omitted rendering within the already
approved private-Visual image-only upgrade scope and this direct founder review.
The Spaces list now renders each visible space's local cover in its existing
entry, using the same private image URL and membership-filtered query. The
underlying space metadata, stored content, clipboard and image access policy
remain in use. Broader UI framework work is not part of this correction.
Source `881a61d10798`, owning pin `f5fc9ea`, published digest
`sha256:91673ba7625f905c7a4d0c3d52b45ccc7e7746f387d1e84aab331d68994c5df9`.
Full `make check`:129passed, including writer/viewer Spaces-list image loading
and outsider exclusion. Parallel cover requests exposed the live-test server's
shared in-memory SQLite cursor race; the isolated test database is now a
temporary file per run/worker with separate request connections. Fast streaming
tests consume Django Client's closing iterator once rather than calling close
again. No regression check is skipped, disabled or serialized. The staged
commit preceded inspection of one failed run; all fixes and the complete passing
gate were in place before this image was built, published or deployed.
Fresh paired capture started2026-10-07T11:56:43Z, took56.03seconds, app resumed.
Database archive50087bytes SHA256
`72ee616dc1d5375e0c48100c89697aad15c15cef9c3b7c9f4f3208b8ac96c5a0`;
content archive2001238bytes SHA256
`f5edb609db9fe4feb6e81f4e73ee97ab8040502f561b285391ce3a926dadd6ed`.
Private copied artifacts hash-match. Isolated restore13tables/104rows/sequences/
75files match, measured4.14seconds. New packaged image renders the actual
restored space cover in owner and synthetic viewer list entries; image reads
pass and outsider list excludes it. Isolated internal network has no published
ports; rehearsal DB/network removed afterward. Temporary backup custody remains T02.
Reviewed owner source archive staged on node; fresh cluster/image/readiness and
pressure checks, exact parsed image-only manifest comparison, kubectl/Helm
server dry-run and all75pre-upgrade file hashes pass. Helm atomic/wait revision15
completed20.58seconds, app1/1 at the exact new digest. No rollback required.
Read-only deployed core view verifies owner list preview and its route; private
preview bytes match the stored space Visual. An unsaved same-tenant outsider's
list has no preview/URL. Production UID10001, single explicit owner grant and
all75file hashes unchanged; no production probe identities/sessions/grants
created. Public health/static200; served clipboard JavaScript unchanged.
Snapshot-helper pin follows this release;7focused recovery tests and fresh
server dry-run pass. User list-preview confirmation remains T09; no complete
workflow acceptance, durable backup closure or Bubble retirement inferred.

View file

@ -23,14 +23,15 @@ accept migration or a live release.
## Review preparation (owned by WP-0008)
- Review host: https://app.coulomb.social/; retained one-writer content release is live.
Current immutable release: [private Visual revision14 receipt](../release/private-visuals-2026-10-07.md).
Current immutable release: [private Visual revision15 receipt](../release/private-visuals-2026-10-07.md).
- Nominated workspace: ReichelAg; latest real protocol and explicit personal-owner
grant imported. Wider Bubble-space reconciliation remains T03.
- Workflow confirmed by user description and ongoing review. Original clipboard
observed directly and matched exactly; wider Bubble UI inventory remains T08.
- Migrated content/visual/link reconciliation and accepted differences: pending T03/T05.
Private covers are now deployed; live owner reads/hash preservation and actual
production-pair isolated recovery pass. Imported Visual user review is pending.
Private page covers are visible per founder review. Missing Spaces-list
preview is corrected in revision15; live owner preview/hash preservation and
actual production-pair isolated recovery pass. List-preview review is pending.
- Writer, reader and outsider access; sharing and portability UX: pending T04.
- Content restart durability and paired real-content isolated restore verified.
Durable backup custody/retention and operational rollback remain T02.

View file

@ -18,7 +18,7 @@ from pathlib import Path
NS = 'coulomb-social'
IMAGE = ('forgejo.coulomb.social/coulomb/coulomb-social@sha256:'
'0e235abc33a1c5613c0e2c9a0f767c871d0fbed6695973ae17cfdcb2dedaaafa')
'91673ba7625f905c7a4d0c3d52b45ccc7e7746f387d1e84aab331d68994c5df9')
CLUSTER_UID = 'a553c742-0115-43d4-99a4-a5ca56fe0786'

View file

@ -167,7 +167,8 @@ responses prevent active-file serving. Visual copy uses the same bounded file
access and refuses destination asset overwrite. Clipboard Markdown/HTML payloads
remain unchanged. UC-008 mandatory fast/browser regressions now protect actual
image loading after duplication and reader/outsider access. make check129passed.
Revision14 deployment is complete; actual Visual/user acceptance is pending.
Revision15 adds Spaces-list covers after founder confirms page Visual visibility
but reports missing list previews. List-preview/user acceptance is pending.
T05 remains
open for revision/concurrency policy, cross-space body-linked assets/incoming
links, and original hierarchy/privacy fidelity; T04 tenant-storage work remains.
@ -180,7 +181,8 @@ inventory:37JPEG assets, zero unsupported/signature mismatches or ambiguous
slugs. No productive content disclosed or changed. Concrete review packet:
docs/release/private-visuals-2026-10-07.md. Exact live decision:
3f959ed2-4163-4fa5-9f88-f80b2a3d1b89 was explicitly approved by the founder.
Runtime now uses this image as revision14; receipt below.
This initial image deployed as revision14. Current runtime is the Spaces-list
correction881a61d/digest91673ba7 at revision15; receipts below.
## T06 — Close service contract and founder cutover gate
@ -595,3 +597,18 @@ UC-008 fast and real-browser checks for writer/viewer list-preview loading and
outsider exclusion. Preserve page/clipboard/content/access behavior. This is a
correction within the approved private-Visual image-only upgrade scope, not
acceptance of the complete use case. No wider UI framework work included.
Correction deployed as revision15: source881a61d10798, owner pinf5fc9ea, digest
sha256:91673ba7625f905c7a4d0c3d52b45ccc7e7746f387d1e84aab331d68994c5df9.
Full129-test lint/browser gate passes with mandatory writer/viewer list-preview
loading and outsider exclusion. Temporary file-backed test DB resolves concurrent
SQLite request-cursor races without serializing or skipping browser requests;
streaming tests follow Django Client's close lifecycle. Gate passed before build.
Fresh paired capture56.03seconds/app resumed; isolated13tables/104rows/sequences/
75files recovery4.14seconds matches. New-image actual restored list cover reads
pass for owner/viewer; outsider excluded. Rehearsal DB/network removed.
Fresh image-only/cluster/content guards and server/Helm dry-run pass. Atomic/wait
upgrade20.58seconds, app1/1. Read-only live list preview/image bytes, outsider
exclusion, owner grant and all75stored hashes verified. Health/static200,
clipboard unchanged. Snapshot-helper pin/7tests/server dry-run pass. T09 awaits
founder list-preview/full workflow review; other T02/T04/T05 requirements stay open.