Tue 29 Sep
OSH brand package⛔ Mark: "5, 6, 7, 9 are all from Chalk, no longer serves food, need to go." So that 119-file folder is MIXED, both venues, despite being called "Schooler Food". SYOT2264, KWUC2257, NWOX5135 + the Twisted Toppings pizza SYMR5790 moved to …
OSH brand packageMark ruled on the brand-kit venue sheet: "first 7 can stay, rest can go" → keep exterior-01 + venue-01..06; venue-07, all six cocktails-* and BOTH music/* quarantined to osh-brand/assets/photos/_NOT_OSH/. ⚠️ music/trad-session.jpg was the …
Arch marketing — socials, posters, Meta adsOctober line-up received (both venues + fees; only the 11 Arch rows taken, no fees): added to the Gigs sheet as RAW text (read back unformatted) and gigs.json, weekdays verified by script; Iann Brennan added for Thu 1 Oct. Mark: "big …
Tue 22 Sep
OSH brand packageThu 24 act = An Bhailiú (Mark typed "an bhaliu"; spelling taken from the 4 published Jul/Aug posts, fada renders in all artwork). Queued: Wed 23 17:00 IST line-up grid (An Bhailiú / Reflex Duo / Sharp Shooter), Thu Tasty Thursday feed …
Mon 21 Sep
OSH brand packageOSH €50-for-€30 voucher sale LIVE (localvouchers.ie/offer/old-schoolhouse — up to 4/person, valid 11 Jan 2027–10 Jan 2028, non-transferable so NO gift framing). Built feed (exterior sign shot) + story (Guinness, the exterior crops badly to …
OSH brand packageMark picked BAABBA → Tue IMG_7349 soup/sandwich/Guinness, Wed 2831 wings, Thu 2922 prawn pasta, Fri 3157 Guinness, Sat 9257 burger + onion ring, Sun 7495 chocolate pudding (crops gigs/build/w4-* — the source IMG number is now in every …
Arch marketing — socials, posters, Meta adsWeek of Mon 21 – Sun 27 Sept scheduled on Mark's go ("Go, schedule them all"), sent 11:03: all 10 HTTP 201; DB read-back 15 rows (5 feed posts IG + FB, 5 IG stories), all QUEUE with images, UTC correct. All 18 posts of the previous week …
Thu 17 Sep
OSH brand packageChalk acct 340936962 SETTLED: activity log shows "Account billed" €9.70 + "Payment Needed → Active" at 00:12 IST Thu 17/09 (Mark had checked the OSH account's billing page by mistake — both are named "Mark Kearns"; memory updated). …
Arch marketing — socials, posters, Meta adsWebsite bug fixed: /whats-on showed every gig one day early for visitors west of UTC (US/Canada; a scraper was seen 15/09). new Date("2026-09-18") parses as UTC midnight and was rendered in the visitor's local zone, so in New York the live …
Wed 16 Sep
OSH brand packageCheck-in. Posts: every OSH slot due so far this week PUBLISHED with release URLs (Mon feed, Tue CAT poster + 4pm story, Wed Fishy feed), 0 ERROR; rest QUEUE through Sun. Chalk ads still DARK: Mark believed the balance was cleared, but acct …
Tue 15 Sep
OSH brand packageWeek 14–20 Sep COMPLETE. Mark gave Fri 18 = Faze 2 (spelling from the 14 Aug OSH history). Rendered + visually checked: Wed grid (Thu Dublin Rovers 9pm / Fri Faze 2 10pm / Sat Smart Moves 10pm), Fri reshare (IMG_6038 burger, "FAZE 2 · …
Arch marketing — socials, posters, Meta adsMusic change, Mark (confirmed via question: the Arch, Fri 18): Fabulous Beardy Bros replace Casey Brothers. Gigs sheet C57 updated RAW and read back through the API (website /whats-on reads it live); gigs.json mirror updated; line-up feed …
Mon 14 Sep
Arch marketing — socials, posters, Meta adsRow created: the Arch marketing workstream had no board row, and the 10/09 money-ledger SAVE line referenced #30 (The Golf Body) by mistake, now #44. State: evergreen Meta campaigns retired 10/09 and read back as PAUSED (Funeral Receptions …
Arch marketing — socials, posters, Meta ads⚠️ 14/09 — AD ACCOUNT 340936962 IS UNSETTLED (unpaid balance) — ALL delivery stopped after 11 Sep, incl. Arch’s two evergreen daily-budget campaigns (Funeral Receptions + Signature Menus) and all 4 Chalk campaigns. Every campaign/ad set/ad …
Arch marketing — socials, posters, Meta adsWeek of Tue 15 – Sun 20 Sept built and loaded into the schedule-week.mjs PLAN: 13 items, dry run passed every guard at 22:29, Postiz empty for those dates. Awaiting Mark's go; nothing sent. Mark's answers (Mon night): the pub has Sky …
Arch marketing — socials, posters, Meta adsMark: "Go, schedule them all." Week of Tue 15 – Sun 20 Sept sent at 22:46 via schedule-week.mjs --send (clock re-read and the Postiz queue re-checked empty first): all 13 returned HTTP 201; DB read-back shows 18 rows (5 feed posts on IG + …
Mon 24 Aug
Arch vouchersMark's call, and correct: repointing front-ends one at a time was whack-a-mole while /exec still answered. Killed at the source, two layers: (1) redeemVoucher now refuses EVERY redemption regardless of caller — proven on a real Active €100 …
Arch vouchersMark confirms the 295 Grace vouchers (€14,750) carried across to Local Vouchers, so the last open risk from the cutover is resolved: a customer presenting an expired-but-honourable Arch voucher will be recognised by the live system. Arch …
Arch vouchersMark: *"let them fire tomorrow because they will be showing today's redemptions, then stop."* Rather than rely on anyone remembering, both jobs now carry a date guard (LEGACY_REPORT_LAST_DAY = 25/08/2026): the 06:00 accounts redemption …
Fri 14 Aug
Arch vouchersThree cutover jobs, all verified live. (1) Purchase: thearchbarswords.ie/vouchers → localvouchers.ie/venue/arch-bar — a 302 in public/_redirects (deliberately not 301 while the cutover beds in; a cached 301 is painful to undo) plus the …
Arch vouchersMark migrated Arch's vouchers to the Local Vouchers back end in a separate session, so thearchbarswords.ie/staff-redeem is now a straight redirect to https://localvouchers.ie/merchant/scan (Mark's call: hard cut, no fallback URL). Page …
Arch vouchersMark from the floor: a Grace voucher showed STATUS: Grace / EXPIRY: 28/10/2026 — a future date on an expired voucher, so staff couldn't explain it to the customer. Real flaw in the Grace model: granting grace overwrites col G with the …
Arch vouchersReversed the 24/07 "leave the used ones" call after it caused three *"Voucher not found"* incidents at the bar in two days, each a genuinely-spent legacy voucher that staff couldn't explain to the customer. Backfilled 11,825 vouchers + …
Thu 13 Aug
OSH vouchersPorted Arch's 3-month rolling grace on paid vouchers to OSH's nightly job (comps/prizes excluded; Config "Grace Period (months)"). Backfill legitimately 0 — proven, not assumed: all 885 Expired vouchers have balance 0 and date from …
Arch vouchersMark's call: 3-month rolling grace on PAID vouchers only. Now a standing rule in the nightly job — a voucher the customer paid for moves to Grace at expiry and stays honourable (supervisor code) until its own expiry + 3 months (Config …
Arch vouchersPorted OSH's supervisor override for expired vouchers to Arch (deploy @58): status Grace = past original expiry but honourable with a supervisor code until the grace deadline (col G), then hard-expires. lookupVoucher returns …
Mon 10 Aug
OSH vouchersvoidVoucher implemented + LIVE (@37). The admin "Void Voucher" button had never worked on either venue — admin.html called google.script.run.voidVoucher(...) but the function did not exist in Code.js, so it errored *"Script function not …
Arch vouchersAccounts asked for vouchers sold + redeemed for FY 01/12/23–30/11/24 and 01/12/24–30/11/25; the admin dashboard shows only the new system, so those years are entirely Ticket Tailor. Pulled both venues from TT (issued_tickets + check_ins …
Arch vouchersvoidVoucher implemented + LIVE (@57), closing the gap flagged on 09/08. The "Void Voucher" button on the admin Voucher Lookup tab had never worked on either venue: admin.html called it but no such function existed in Code.gs, so every …
Sun 09 Aug
Arch vouchersTwo live issues from the floor. (1) Scanner showed a stale panel after a rejected redemption: staff redeemed a promo, tapped again, and got the error *"not active (Fully Redeemed)"* while the panel still read STATUS: Active / €50.00 with a …
Fri 24 Jul
Arch vouchersA legacy voucher be3JRwj scanning oddly at the bar exposed an import gap: it's a legacy Ticket Tailor voucher (box office 13598) the original migration MISSED. Audited all 17 TT voucher series vs the DB → 96 still-valid €50 vouchers (all …
Tue 21 Jul
OSH vouchersPrize/comp voucher minting built into OSH. Added createPrizeVoucher (COMP_VALUE → a Standard stored-value comp voucher: partial redemption, paid €0, 12-mo expiry, Source-tagged, idempotent by key) + a doPost JSON handler …
OSH vouchersPrize minting now LIVE + verified (deploy @29). Mark set PRIZE_MINT_SECRET via a one-click _setPrizeMintSecret editor run (the Project Settings UI paste hadn't saved — diagnostic showed secretSet:false). End-to-end proof: minted OSH-S72S46 …
OSH vouchersMade prize-issuing repeatable + self-serve (Mark's "run comps going forward, as a learning experience" ask). Three parts: (1) "Issue Comp Prize" button in the OSH admin page — value/name/email/comp → mints + emails, admin-token path …
Arch vouchersCOMP_VALUE prize type added to createPrizeVoucher + deployed (@49): a full stored-value comp gift voucher (Standard / partial-redemption, months-based expiry) for cash-value competition prizes — distinct from KO_DISCOUNT and Free Pint …
Fri 17 Jul
Arch/OSH holiday planner + roster toolKeith Walsh submitted 15 Aug even though Colin O'Sullivan was Approved off 15–21 Aug (both Arch Senior, cap=1). Diagnosed: code + data would block (verified via simulation); main URL AKfycbyZ=@40 has the cap. Root cause = this script has 9 …
Thu 16 Jul
OSH vouchersLeak sweep: cutover now holding. Re-ran the TT /check_ins sweep: only 1 voucher redeemed via Ticket Tailor since the 07-12 sync (WJ3b6pw, €50, 07-12 13:14) — flipped to Fully Redeemed (single code → direct sheet edit, no deploy). Zero TT …
Wed 15 Jul
The Open LMS (Gio & Glenn's sweep)Deadline extended 21:00 → MIDNIGHT tonight (getEntriesCutoff = 16 Jul 00:00, @21),
The Bashers Sweep (The Open 2026)Typeahead picker ported from the Open LMS (@46). Bashers had the same
The Bashers Sweep (The Open 2026)Last-call reminder built (@47), send_reminders action, modes count/test/live.
The Bashers Sweep (The Open 2026)Last-call reminder SENT (Mark approved after reviewing the test copy):
Arch summer spritz menuBuilt end-to-end in one pass. Mark supplied the offer + photos; confirmed the serves are correct and it runs every day (availability banner added to the hero + card). Card renders both themes and fits A4 with no overflow. Awaiting Mark to …
Arch summer spritz menu⚠ "Some people still can't enter — list won't populate when they type" (reported
Arch summer spritz menuROOT CAUSE FOUND (Mark's screenshot) — mobile auto-zoom. The list WAS populating
Arch summer spritz menuBashers standings + picks made PUBLIC (@52, Mark's explicit call — *"happy for the
Tue 14 Jul
The Open LMS (Gio & Glenn's sweep)Golfer picker rebuilt as a typed-name autocomplete (@14). Punters kept
The Open LMS (Gio & Glenn's sweep)Admin entries table is now sortable (@15): tap Name (A–Z / Z–A) or
The Open LMS (Gio & Glenn's sweep)Free-entry (comp) flag added (@16). A free entry still counts as an entry
The Open LMS (Gio & Glenn's sweep)Two-step entry made idiot-proof + abandoned-entry chase (@17/@18). Punters were
The Open LMS (Gio & Glenn's sweep)Email hardening + admin can edit name/email (@19/@20). The email field had
Mon 13 Jul
The Open LMS (Gio & Glenn's sweep)~30+ live entries wiped by clear_entries run during feature
Sun 12 Jul
OSH vouchersFirst real sale's gift email fixed. Buyer mistyped the recipient address at checkout (Gflanagan22 vs garyflanagan22@hotmail.com) so the €100 gift (OSH-P2GXLG) never arrived. Corrected the address on file + resent to the recipient only …
OSH vouchers⚠ Cutover leak found + closed. Spot-check (did staff really stop using TT?) via TT /check_ins timestamps: 10 vouchers (€500 face) were redeemed through Ticket Tailor on 07-11 evening (17:30–21:19), the scanner's first night — none in our …
Sat 11 Jul
OSH vouchersStaff redemption scanner LIVE (cutover from Ticket Tailor). Cutover-day incremental TT→sheet sync flipped the 11 vouchers redeemed via TT since the 07-09 sync (9 Active + 2 Grace) → Fully Redeemed, status/balance only (NOT logged to …
Fri 10 Jul
OSH vouchers08:00 daily-report trigger installed by Mark → OSH daily voucher email now fully live (first automated send 08:00 tomorrow, covering today's activity).
OSH vouchersDaily voucher email added (OSH counterpart of the Arch sendDailyReport): SOLD / REDEEMED / OUTSTANDING tiles + "Vouchers sold" table, daily 08:00 trigger, recipient = Config "Daily Report Email" (default schoolhouseinfo1@gmail.com …
Thu 09 Jul
Arch vouchersDaily voucher-redemption report for accounts@ built + LIVE. New Apps Script job buildVoucherRedemptionReport (deployed @46) rebuilds a shared Google Sheet each morning (6am Dublin trigger) combining Arch New System (Redemptions sheet) + …
Arch vouchersreport now pulls all four sources (added OSH internal sheet 1VHeDqCcH…, shared read to info@) as Mark migrates OSH off TT onto the internal system, and includes standard vouchers alongside promo (standard = value redeemed, face=paid). ⚠️ …
Wed 08 Jul
Daily social digest (email)Brainstormed → spec → built + deployed a Cloudflare Worker
Tue 07 Jul
The Golf Body — faceless golf-tips brandKicked off from the IG-saves analysis (701 saves → 168 golf/fitness). Brainstormed w/ visual companion: style locked (friendly 2D + line-figure mechanics + motion-graphics hooks; comedy only as seasoning), fully faceless + AI voice, IG-led …
The Golf Body — faceless golf-tips brandRepo golf-brand (own git, commit edd69b6, 59 files, no secrets tracked). Phase 1 tip bank stories/tipbank.json (Series 1 ×10, each hook/steps/payoff/source-credit). Phase 2 src/scriptgen.ts → 10 video-script JSONs (out/scripts/, narration …
Mon 06 Jul
Arch food costing — recipes & dish GP✅ VAT confirmed ALREADY LIVE — do NOT re-push. SalesApi.gs date-aware food VAT (FOOD_VAT_SWITCH = new Date(2026,6,1) → foodVatRate_() 9% from 1 Jul, else 13.5%) was already pushed and deployed by an earlier session: script version @87 …
The Golf Body — faceless golf-tips brandFaceless-infra handoff (HANDOFF-faceless-infra.md) mined for reuse. Shipped: (1) IG follow-CTA on success + leaderboard pages (config-driven instagram per comp; Breakroom = @the___breakroom; OSH renders once Mark supplies a handle) …
Sun 05 Jul
Arch specials menu cardBuilt the generator + iterated the design with Mark. Landed the flowing hierarchy he wanted: crest once at top, garlic-&-mozzarella ciabatta as a quiet top line (not a course), main = the hero (biggest type), sides a bit-part italic line. …
Fri 03 Jul
Arch vouchersKO_DISCOUNT voucher type added + deployed (@44): the WC Predictor knockout prize — €10 off, min spend €70 (staff eyeball, no till enforcement), 7-day expiry, one-scan/no-change. New prizeType branch in createPrizeVoucher (reuses …
Mon 29 Jun
Arch/OSH holiday planner + roster toolAdded 2 approved holidays for Mark (4 Jul; 27 Aug–1 Sep) + a Firm block on 19 Jul, written directly to the live sheet in the app's own format. Then a 19–20 Jul request still came in (Gabriel Esteban, OSH) after the block → root-caused: the …
Arch/OSH holiday planner + roster toolNew hard department-capacity lock built + deployed @38: a request is hard-blocked at submit when ≥cap OTHER staff are already Approved off (same venue+dept, overlapping). Caps: Waiting Staff = 2, all others = 1 (Senior/Bar Staff/Cellar …
Arch/OSH holiday planner + roster toolReconciled the planner with the roster-builder (sibling session) per its return prompt. Decision: two tools, one data source — planner = source of truth for HR core (names, dept, rotations, paired, blocked dates); roster builder consumes …
Arch/OSH holiday planner + roster toolRoster replied: it auths to Sheets API (tab reads), can't call Apps Script fns. So (1) created a read-only Patterns tab (Name|dept|location|days_off|rotationA|rotationB|anchorSat|anchorWeek, day-NAME strings, 23 rows) mirroring …
Arch/OSH holiday planner + roster toolMark's calls applied: Willie→William Mc Cormack (Staff sheet + 8 Requests rows + seed; his Sun,Mon rotation+lookup now resolve, Patterns dept filled); Rosaleen Byrne stays roster-only (not added); Keith Bell (fixed Mon,Wed), Pat Crosbie …
Arch/OSH holiday planner + roster toolQ: auto-add new starters to the planner. New hires land "both ways" (Staff DB v3 + rosters). Diffed the Staff DB v3 (1kB2QDW…, 107 rows) vs planner Staff (91 rows): added the 4 genuine recent 2026 starters manually → planner IDs 100–103 …
Arch/OSH holiday planner + roster toolA chef couldn't book 8–14 Sep: cause = the old "Mark unavailable" Firm blocks scope=All (his §7 away weeks) hard-blocked EVERY staffer, not just his cover group. Per Mark, removed all "Mark unavailable" firm blocks (Sep 7–13 + Apr/May/Jul …
Thu 25 Jun
Arch/OSH holiday planner + roster toolMigrated to Claude Code. Bound Script ID 1twL1sub8PQp9FTkf8ZEcCevxpy1sQBDMtf89CJZ9nXteqIE4cC6lW1S6 located (bound scripts don't list via clasp/Drive — found by hooking window.open on the sheet's Extensions→Apps Script in the Chrome ext …
Wed 24 Jun
Contracts + Automator (Arch/OSH)Real state captured. Build lives at C:\Users\kearn\Contract sender\ — live Apps Script web app @58 / v15.4 (clasp scriptId 1Z4U3lz…, sheet Arch_Schoolhouse_Staff_Database_v3, SignNow provider on kearnsam@gmail.com). This session: recovered …
Contracts + Automator (Arch/OSH)All signed contracts extracted from SignNow → Drive. Reconciliation found 18 fully-signed docs (17 current staff + 1 ex-staff, all signed since the May archive run) with no local copy; archiveRecentSigned() downloaded each (collapsed + …
Tue 23 Jun
OSH brand packageBrainstorm + spec approved by Mark 22/06. Decisions: extend live identity; deliverables = brand book + social kit (no print/imagery-library); social beats = 4 daily specials + vouchers + Sunday roast + live music/trad + live sport (no …
OSH brand packageBuilt osh-brand/ (static brand-book site, Breakroom pattern; vanilla HTML/CSS/JS, index.html/styles.css/app.js). Crest redrawn to v2 from pixel-measured original (gable roof + slate courses + rafter ticks, arched gable window, fanlight …
OSH brand packageDeployed osh-brand/ to Cloudflare Pages → https://osh-brand.pages.dev (Arch CF account, project osh-brand, production branch main; own wrangler.jsonc shield, pages project create first then wrangler pages deploy . --branch=main). Verified …
OSH brand packageSpecials reworked to themed days (no prices: Mon steaks/ribs/stir-fries · Cheap Ass Tue Mexican+drinks · Wed fish deals · Thu steaks); Trad→Thu 9pm, Fri/Sat live music 10pm board added. First live OSH Facebook post PUBLISHED via Postiz …
Thu 18 Jun
Arch food costing — recipes & dish GPBuilt the backbone: 16 prep recipes (4 dips, ~12 kitchen sauces, Crispy Onions) on Prep_Recipes (per-L / per-kg / per-serve + a Unit Cost €/ml,€/g column) and the dish builder → 3 composite dishes proven from those preps: Cheeseburger …
Arch equipment maintenance logBuilt end-to-end + verified offline (mock-data preview, all 3 views, desktop + mobile, zero console errors). 33 items seeded across 6 areas; Dashboard (status grid + summary tiles + red banner), QR Report-a-fault form (optional note …
Arch equipment maintenance logclasp reauthed to the Arch account (info@thearchbarswords.ie; personal creds backed up to ~/.clasprc.bak.kearnsam.json), project Arch Equipment Log created (scriptId 1_Ta9F4U8fVSzkOUgINcn3V0sFVwqVbazlxineOnAbUhJCSIBeHH4ZwAK), 3 files …
Arch equipment maintenance logMark's plan: he'll set the real equipment statuses via Admin (PIN 7475) FIRST, then turn emails on. Alerting model changed per Mark: faults email instantly; everything else is a WEEKLY digest (Mondays 08:00), not daily …
Arch equipment maintenance logTwo features added per Mark, built + verified offline + deployed live (@3). (1) Per-category service contacts — new Contacts tab (auto-created + seeded; Refrigeration → Premier Refrigeration), editable in Admin; when a fault is reported …
Arch equipment maintenance logPer Mark, replaced load-one-at-a-time status editing with an inline "Update equipment status" list at the top of Admin: every item grouped by area with a condition picker beside it + a note box below, colour-coded by status, saving inline …
Arch equipment maintenance logAdded a Wash Up area: Dishwasher (Warewashing, 6-monthly) + Grease Trap (Grease Trap, 3-monthly/quarterly — default, editable) → register now 35 items; 2 new categories flow into contacts + editor. ensureInit_ made idempotent (appends …
Sat 13 Jun
Arch vouchers#9 DONE: both orphan 2-Jun connected accounts removed from Hospitech Connect (the mis-named "The Arch Bar" acct_1Te1ZQ + unused "Riverwood Investments"). Pre-removal forensics: the €21 test was already customer-refunded 3 Jun, its €19.40 …
Arch vouchers#2 DONE (Mark's spec: keep 4-digit PIN, add lockout): 5 consecutive PIN failures → all PIN auth locked 15 min (script-wide, CacheService), correct PIN resets counter; wired into verify_pin, today_redemptions and redeem. #11 DONE: qty cap …
Arch vouchers#5 CONFIRMED: expireOverdueVouchers daily trigger installed + running (last run 12/06 02:08, 0% errors) — no action needed. #12 DONE: arch-smoke-test.js built (root of Claude Code dir, clone of OSH harness + Arch extras: live no-money …
Arch vouchersMarked LIVE by Mark. Final state: Stripe Connect fee split proven in production (€2.73/€50 sale to Hospitech), Hospitech on dedicated "Vouchers Arch" key, WC pint wire live (104+ pints, Complimentary display everywhere, 72h expiry), PIN …
Fri 12 Jun
Arch vouchersPint "€6.50" display fixed everywhere (WC fix request, 104 live pints): scanner shows FREE PINT/Complimentary/1×Pint (gist 4ba0767), public balance checker shows "Complimentary — 1 Pint" (gist c9e0daf), BCC subject pint-aware (@26). All …
Arch vouchers⚠️ WP paste CANCELLED — discovered the live site moved off WordPress to Cloudflare Pages (archbar-site, project archbar-site); live pages load /scripts/redeem.js + /scripts/vouchers.js, NOT the gists. Fixed scripts copied into …
Arch vouchersReview item #3 DONE: GET create_prize route removed (@27), pint minting is POST-only; verified GET dead + POST/idempotency intact. Item #1 in progress: Mark creating dedicated "Vouchers Arch" Hospitech key (decouples Arch from the shared …
Arch vouchers#1 DONE: dedicated standard key "Vouchers Arch" created on Hospitech, swapped into Arch HOSPITECH_SK, Connect checkout verified live (no-money session create OK). Arch + OSH keys now independent — each venue's key can be rolled without …
Thu 11 Jun
Contracts + Automator (Arch/OSH)Tracker created. SignNow automation marked "in progress" per CLAUDE.md. Owning session: please update with the real current state of the job + Automator.
Arch/OSH employee database → financial dashboardTracker created. Owning session: update with DB completeness % and what the dashboard link needs.
OSH vouchersFULLY LIVE. Hospitech Connect fee split verified with real production sale (€1.70 collected on €10 test). Fee model locked: venue pays Stripe processing. Smoke harness: osh-vouchers/smoke-test.js. Remaining: monitor early sales only.
OSH website handoverRedesign spec + 14-step plan approved 2026-06-10 (Warm Stout palette, builds on osh-site scaffold — see docs/superpowers/plans/). Vouchers side already live (#3). Next: execute the build plan.
Arch vouchersSystem live; WC Predictor pint vouchers wire into it (72h pint expiry set @25). Owning session: list the actual remaining polish items here.
OSH financial dashboardKickoff doc ready (OSH Dashboard/KICKOFF.md). Blocked on Workspace mail migration. Unblock path: complete the migration, then start the port.