From 0974805ae898cbbc1d0e81477fecaf9420093fff Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 18 May 2026 01:45:48 -0400 Subject: [PATCH] Add AI-assisted settlement readiness workflow --- app/layout.tsx | 51 +- app/shows/[id]/actions.ts | 133 + app/shows/[id]/page.tsx | 47 +- .../[id]/readiness-clarification-picker.tsx | 137 + app/shows/[id]/settlement-readiness-modal.tsx | 500 + app/shows/[id]/settlement-workspace.tsx | 819 ++ app/shows/[id]/workspace/page.tsx | 49 + data/greenroom.db | Bin 876544 -> 876544 bytes db/schema.ts | 2 + greenroom-starter-main/.gitignore | 41 + greenroom-starter-main/README.md | 267 + greenroom-starter-main/app/artists/page.tsx | 161 + greenroom-starter-main/app/context/page.tsx | 224 + greenroom-starter-main/app/favicon.ico | Bin 0 -> 25931 bytes greenroom-starter-main/app/globals.css | 143 + greenroom-starter-main/app/icon.svg | 13 + greenroom-starter-main/app/layout.tsx | 78 + .../app/opengraph-image.tsx | 95 + greenroom-starter-main/app/page.tsx | 5 + greenroom-starter-main/app/reports/page.tsx | 465 + .../app/shows/[id]/page.tsx | 492 + .../app/shows/[id]/settle/page.tsx | 717 ++ greenroom-starter-main/app/shows/page.tsx | 122 + .../app/shows/shows-list.tsx | 209 + .../components/brand/logo.tsx | 110 + .../command-palette/command-data.tsx | 46 + .../command-palette/command-palette.tsx | 333 + .../components/layout/nav-links.tsx | 46 + .../components/layout/sidebar.tsx | 66 + .../components/ui/badge.tsx | 164 + .../components/ui/button.tsx | 59 + greenroom-starter-main/components/ui/card.tsx | 127 + .../components/ui/tooltip.tsx | 53 + greenroom-starter-main/data/ceo-memo.md | 43 + greenroom-starter-main/data/dispute-thread.md | 114 + greenroom-starter-main/data/greenroom.db | Bin 0 -> 876544 bytes .../data/transcripts/diego.md | 57 + .../data/transcripts/marcus.md | 61 + .../data/transcripts/mariana.md | 75 + .../data/transcripts/sarah-kim.md | 63 + greenroom-starter-main/db/index.ts | 19 + .../db/migrations/0000_awesome_juggernaut.sql | 116 + .../db/migrations/0000_initial.sql | 136 + .../db/migrations/meta/0000_snapshot.json | 946 ++ .../db/migrations/meta/_journal.json | 13 + greenroom-starter-main/db/schema.ts | 335 + greenroom-starter-main/db/seed.ts | 1477 +++ greenroom-starter-main/drizzle.config.ts | 10 + greenroom-starter-main/eslint.config.mjs | 18 + greenroom-starter-main/lib/dealMath.ts | 261 + greenroom-starter-main/lib/format.ts | 58 + greenroom-starter-main/lib/queries.ts | 232 + greenroom-starter-main/lib/settlementStage.ts | 110 + greenroom-starter-main/lib/utils.ts | 6 + greenroom-starter-main/next.config.ts | 7 + greenroom-starter-main/package-lock.json | 8526 +++++++++++++++++ greenroom-starter-main/package.json | 40 + greenroom-starter-main/postcss.config.mjs | 7 + greenroom-starter-main/public/file.svg | 1 + greenroom-starter-main/public/globe.svg | 1 + greenroom-starter-main/public/next.svg | 1 + greenroom-starter-main/public/vercel.svg | 1 + greenroom-starter-main/public/window.svg | 1 + greenroom-starter-main/tsconfig.json | 34 + lib/AIClient.ts | 299 + lib/clarificationEmailDraft.ts | 66 + lib/dealAmbiguity.ts | 282 + lib/queries.ts | 35 + lib/readinessAnswers.ts | 30 + lib/readinessWorkspaceApply.ts | 112 + lib/settlementWorkspaceSeed.ts | 223 + package.json | 2 +- 72 files changed, 19584 insertions(+), 8 deletions(-) create mode 100644 app/shows/[id]/actions.ts create mode 100644 app/shows/[id]/readiness-clarification-picker.tsx create mode 100644 app/shows/[id]/settlement-readiness-modal.tsx create mode 100644 app/shows/[id]/settlement-workspace.tsx create mode 100644 app/shows/[id]/workspace/page.tsx create mode 100644 greenroom-starter-main/.gitignore create mode 100644 greenroom-starter-main/README.md create mode 100644 greenroom-starter-main/app/artists/page.tsx create mode 100644 greenroom-starter-main/app/context/page.tsx create mode 100644 greenroom-starter-main/app/favicon.ico create mode 100644 greenroom-starter-main/app/globals.css create mode 100644 greenroom-starter-main/app/icon.svg create mode 100644 greenroom-starter-main/app/layout.tsx create mode 100644 greenroom-starter-main/app/opengraph-image.tsx create mode 100644 greenroom-starter-main/app/page.tsx create mode 100644 greenroom-starter-main/app/reports/page.tsx create mode 100644 greenroom-starter-main/app/shows/[id]/page.tsx create mode 100644 greenroom-starter-main/app/shows/[id]/settle/page.tsx create mode 100644 greenroom-starter-main/app/shows/page.tsx create mode 100644 greenroom-starter-main/app/shows/shows-list.tsx create mode 100644 greenroom-starter-main/components/brand/logo.tsx create mode 100644 greenroom-starter-main/components/command-palette/command-data.tsx create mode 100644 greenroom-starter-main/components/command-palette/command-palette.tsx create mode 100644 greenroom-starter-main/components/layout/nav-links.tsx create mode 100644 greenroom-starter-main/components/layout/sidebar.tsx create mode 100644 greenroom-starter-main/components/ui/badge.tsx create mode 100644 greenroom-starter-main/components/ui/button.tsx create mode 100644 greenroom-starter-main/components/ui/card.tsx create mode 100644 greenroom-starter-main/components/ui/tooltip.tsx create mode 100644 greenroom-starter-main/data/ceo-memo.md create mode 100644 greenroom-starter-main/data/dispute-thread.md create mode 100644 greenroom-starter-main/data/greenroom.db create mode 100644 greenroom-starter-main/data/transcripts/diego.md create mode 100644 greenroom-starter-main/data/transcripts/marcus.md create mode 100644 greenroom-starter-main/data/transcripts/mariana.md create mode 100644 greenroom-starter-main/data/transcripts/sarah-kim.md create mode 100644 greenroom-starter-main/db/index.ts create mode 100644 greenroom-starter-main/db/migrations/0000_awesome_juggernaut.sql create mode 100644 greenroom-starter-main/db/migrations/0000_initial.sql create mode 100644 greenroom-starter-main/db/migrations/meta/0000_snapshot.json create mode 100644 greenroom-starter-main/db/migrations/meta/_journal.json create mode 100644 greenroom-starter-main/db/schema.ts create mode 100644 greenroom-starter-main/db/seed.ts create mode 100644 greenroom-starter-main/drizzle.config.ts create mode 100644 greenroom-starter-main/eslint.config.mjs create mode 100644 greenroom-starter-main/lib/dealMath.ts create mode 100644 greenroom-starter-main/lib/format.ts create mode 100644 greenroom-starter-main/lib/queries.ts create mode 100644 greenroom-starter-main/lib/settlementStage.ts create mode 100644 greenroom-starter-main/lib/utils.ts create mode 100644 greenroom-starter-main/next.config.ts create mode 100644 greenroom-starter-main/package-lock.json create mode 100644 greenroom-starter-main/package.json create mode 100644 greenroom-starter-main/postcss.config.mjs create mode 100644 greenroom-starter-main/public/file.svg create mode 100644 greenroom-starter-main/public/globe.svg create mode 100644 greenroom-starter-main/public/next.svg create mode 100644 greenroom-starter-main/public/vercel.svg create mode 100644 greenroom-starter-main/public/window.svg create mode 100644 greenroom-starter-main/tsconfig.json create mode 100644 lib/AIClient.ts create mode 100644 lib/clarificationEmailDraft.ts create mode 100644 lib/dealAmbiguity.ts create mode 100644 lib/readinessAnswers.ts create mode 100644 lib/readinessWorkspaceApply.ts create mode 100644 lib/settlementWorkspaceSeed.ts diff --git a/app/layout.tsx b/app/layout.tsx index 3df27c78..21275261 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -67,8 +67,57 @@ export default function RootLayout({ - + + {/* Strip Grammarly (and similar) body attrs before hydration — React 19 dev overlay can still warn even with suppressHydrationWarning. */} +