{"packetVersion":"2026-08-03.fe13.launch-rehearsal","status":"owner_records_required","canonicalPage":"/activation/rehearsal","packetRoute":"/activation/rehearsal/packet","sourceInventoryRoute":"/activation/inventory","sourceHandoffReviewRoute":"/activation/handoff/review","sourceSessionRoute":"/activation/session","storageBoundary":"Public no-store rehearsal only. This packet reads public inventory and renders a go/no-go plan. It does not submit, persist, seed, mutate, authorize, charge, upload, page, request secrets, call private APIs, or create public inventory.","proofBoundary":"This proves rehearsal readiness only. It does not prove owner approval, real event/service creation, checkout, booking, Stripe, media, monitoring, role-account QA, provider mutations, rollback execution, or launch-complete status.","inventoryCounts":{"eventsListed":0,"servicesListed":0,"eventRows":0,"serviceRows":0,"plansCount":4},"allPublicReadsPassed":true,"nextDecision":"Hold production proof until owner-approved event and service records exist.","rehearsalChecks":[{"label":"Public inventory baseline","status":"ready","current":"Public home, events, services, and plans routes responded with expected top-level keys.","proof":["Attach the `/activation/inventory/packet` response to the proof session.","Record public route status, response bytes, counts, missing keys, and checked timestamps.","Confirm the snapshot is fresh immediately before any owner-approved record work."],"stop":"Stop if public inventory reads are stale, missing expected keys, or contradict the planned proof lane."},{"label":"Real event proof target","status":"hold","current":"Public inventory is honest-empty for events. A real operator-owned event record is still required before FE-02, FE-03, FE-04, or FE-06 can be proven with live data.","proof":["Bring an owner-approved event alias, host account alias, schedule, public-safe location, ticket tier, and checkout or analytics scope.","Verify event list, event detail, JSON-LD, quote boundary, ticket wallet, and analytics evidence against the approved record only.","Separate discovery/detail proof from checkout, charge, refund, scan, and analytics proof."],"stop":"Do not seed fake events, publish private drafts, create orders, expose private venue details, or run charges to make event proof pass."},{"label":"Real service proof target","status":"hold","current":"Public inventory is honest-empty for services. A real operator-owned provider service is still required before service list, detail, booking, or Connect proof can be live-verified.","proof":["Bring an owner-approved provider alias, service alias, category, city or coverage area, listing state, and booking or Connect boundary.","Verify `/services`, service detail, service JSON-LD, provider ownership, draft isolation, and booking or Connect behavior against the approved service only.","Separate listed public evidence from provider-private draft and payout evidence."],"stop":"Do not invent provider rows, expose drafts, activate Connect, create bookings, or imply payout readiness from source coverage."},{"label":"Role, payment, media, and monitoring approvals","status":"owner approval required","current":"Role-account QA, Stripe, protected media, monitoring channels, and rollback proof remain separate owner-controlled gates.","proof":["Use approved buyer, host, provider, promoter, manager, scanner, and admin aliases without storing reusable credentials.","Keep Stripe mode, webhook, refund, Connect, Tax, Radar, KYC, payout, and balance proof inside the approved session scope.","Use safe media aliases and approved monitoring recipients; record rollback target revision before mutating providers."],"stop":"Do not store passwords, tokens, cookies, raw emails, bank details, private media keys, private screenshots, or alert recipients in committed evidence."},{"label":"Session closeout","status":"owner approval required","current":"The proof session can close only after passed, failed, contradicted, and still-gated checks are recorded separately.","proof":["Attach source commit, Cloud Build, Cloud Run, health, packet, route, role, provider, and artifact evidence to the matching lane.","Record every failed or contradicted check without converting it into launch-complete status.","Update the ledger and archive with remaining gates before any public launch claim."],"stop":"Do not mark launch complete from public GET checks, source tests, deployed HTML, screenshots, or adjacent completed lanes alone."}],"inventory":{"packetVersion":"2026-08-03.fe13.live-inventory-snapshot","status":"public_inventory_snapshot","canonicalPage":"/activation/inventory","packetRoute":"/activation/inventory/packet","sourceReviewRoute":"/activation/handoff/review","storageBoundary":"Public no-store inventory reads only. This snapshot does not submit, persist, seed, mutate, authorize, charge, upload, page, request secrets, call private APIs, or create public inventory.","proofBoundary":"This proves current public API shape and counts only. It does not prove real event/service creation, checkout, booking, Stripe, media, monitoring, role-account QA, provider mutations, or launch-complete status.","endpoints":[{"key":"home","label":"Public home stats","route":"/v1/home","expects":["stats"],"gate":"Summarizes live public inventory counts; nonzero counts still need route and role-account proof.","url":"https://tiredapi.co/v1/home","ok":true,"status":200,"bytes":174,"checkedAt":"2026-08-04T01:27:58.941Z","counts":{"eventsListed":0,"servicesListed":0,"publicGalleries":0,"ticketsSold":0,"accountsSignedUp":9},"missingKeys":[],"note":"Public inventory route responded with the expected top-level key."},{"key":"events","label":"Public events feed","route":"/v1/events","expects":["events"],"gate":"Published events must be owner-approved before FE-02, FE-03, FE-04, or FE-06 can move beyond honest-empty proof.","url":"https://tiredapi.co/v1/events","ok":true,"status":200,"bytes":13,"checkedAt":"2026-08-04T01:27:58.946Z","counts":{"eventsCount":0},"missingKeys":[],"note":"Public inventory route responded with the expected top-level key."},{"key":"services","label":"Public services feed","route":"/v1/services","expects":["services"],"gate":"Listed services must be owner-approved before marketplace detail, booking, or Connect proof can move beyond honest-empty proof.","url":"https://tiredapi.co/v1/services","ok":true,"status":200,"bytes":15,"checkedAt":"2026-08-04T01:27:58.948Z","counts":{"servicesCount":0},"missingKeys":[],"note":"Public inventory route responded with the expected top-level key."},{"key":"plans","label":"Public plan catalog","route":"/v1/plans","expects":["plans"],"gate":"Public plan rows are catalog evidence only; owner-approved admin mutation and payment-side proof remain separate.","url":"https://tiredapi.co/v1/plans","ok":true,"status":200,"bytes":1143,"checkedAt":"2026-08-04T01:27:58.950Z","counts":{"plansCount":4},"missingKeys":[],"note":"Public inventory route responded with the expected top-level key."}]}}