diff --git a/feedback/index.html b/feedback/index.html index b11172d..8f1cbf7 100644 --- a/feedback/index.html +++ b/feedback/index.html @@ -190,11 +190,7 @@ border: 0; } - /* ---- Feedback list (cohort full) ---- */ - .fb { border-top: 1px solid var(--line); padding: 1rem 0 0; margin: 1rem 0 0; } - .fb:first-of-type { border-top: 0; padding-top: 0.2rem; margin-top: 0.4rem; } - .fb p { margin: 0 0 0.5rem; } - .fb cite { font-style: normal; font-size: 0.85rem; color: var(--brass-deep); } + /* ---- Cohort full (no feedback is ever rendered) ---- */ .who { font-size: 0.8rem; letter-spacing: 0.06em; @@ -211,26 +207,26 @@ GET statusUrl (no query string) -> 200 { "seats_left": 7, "seats_total": 10 } <- the intended shape or { "free": 9 } <- what the live route answers today - or { "free": 0, - "feedback": [ { "text": "...", "name": "Jane", "publish": "yes" } ] } + or { "free": 0, "feedback": [ ... ] } A count arrives under the documented names first, then the live route's "Free"/"free"; a count must be a whole number >= 0 or it is not on the wire - (so "free": "" is skipped and the next key is read). "feedback" (aka "entries") - carries the cohort's words: each entry is published only when its "publish" is - "yes" (words with the name) or "name" (words without it) — "no", missing or - unknown is never rendered. With no seats and no "feedback", the cohort-full - state states plainly that nothing is published yet (never a blank list). + (so "free": "" is skipped and the next key is read). A "feedback" array in the + reply is NOT consumed by this page and nothing from it is ever rendered — the + page reads the count only. With no seats, the cohort-full state shows the + closed-cohort line alone: no quotes, no excerpts, no paraphrases. POST submitUrl { "form": "claim", "upwork": "" } -> 200 { "seats_left": 6, "seats_total": 10, "held_until": "2026-11-03T18:40:00Z" } - POST submitUrl { "form": "feedback", "upwork": "", "name": "...", - "email": "...", "anonymous": false, "finalized": "yes", ... , - "publish": "yes" | "name" | "no" } + POST submitUrl { "form": "feedback", "upwork": "", + "finalized": "yes", ... } + "upwork" is present ONLY when a seat was claimed this visit — the claimed Upwork + name, held in memory, sent to this route and nowhere else. With no claim the + submission carries no name and is anonymous. -> any 2xx = receipt shown; a non-2xx is reported as a failure, never as success. An unexpected shape is named, never guessed: a count that did not come off the wire is - not printed, and an entry whose "publish" is missing or unknown is not rendered. --> + not printed. -->