Skip to content

Latest commit

 

History

History
56 lines (47 loc) · 2.65 KB

File metadata and controls

56 lines (47 loc) · 2.65 KB

Hackathon log

  • Project: Friday
  • Event: Convex All Gas Hackathon
  • What it does: Turns informal Slack requests into durable plans with sourced constraints, research, exact approval, and booking evidence.
  • Live app: not deployed
  • Repo: https://github.com/getsentry/friday
  • Frontend: Codex Sites
  • Convex deployment: https://fabulous-fly-727.convex.cloud
  • Components: @agentmail/convex, @convex-dev/auth
  • Convex features: schema, tables, indexes, queries, mutations, realtime queries, authentication, authorization
  • Auth: Convex Auth
  • AI models: none
  • Started: 2026-08-26T01:47:56Z
  • Last updated: 2026-08-30T02:47:23Z

Log

2026-08-26 - working tree

Scaffolded a ChatGPT Site with a local Convex backend and a live read/write foundation. Mounted AgentMail, installed the Firecrawl integration for later configuration, added submission guidance, and wired a reactive workspace status (app/page.tsx, convex/schema.ts, convex/workspace.ts, convex/convex.config.ts). Updated the production dependency baseline after a security review.

Added the Convex Auth v2 alpha preview with username-first passkeys, protected per-user data, and a small private-note workflow for testing sign-up, sign-in, sign-out, persistence, and authorization (app/AuthPlayground.tsx, app/ConvexClientProvider.tsx, convex/auth.ts, convex/auth.config.ts, convex/authPlayground.ts, convex/users.ts, convex/schema.ts). The local WebAuthn relying party is all-gas.localhost; production must use the final chatgpt.site host and new production signing keys.

Hardened the playground before launch: disabled automatic passkey challenge creation, rejected loopback Convex URLs in production, documented fresh deployment setup, and added multi-user authorization tests for private-note isolation, validation, and unauthenticated access (convex/authPlayground.test.ts, vitest.config.ts).

2026-08-28 - working tree

Defined Friday's Slack planning workflow and shipped its first durable Convex lifecycle. The backend ingests a normalized Slack request idempotently, records sourced constraints and candidate evidence, controls vendor inquiry and exact organizer approval, stores booking evidence, and writes one typed log entry per revision (docs/product/friday-spec.md, convex/schema.ts, convex/events.ts, convex/event*.ts).

Added 28 event lifecycle tests and split the event code into focused modules. Configured Oxlint, Oxfmt, and the anti-slop rules without suppressing findings; formatting, both linters, TypeScript, and all 44 tests pass (convex/events.*.test.ts, test/eventTestSupport.ts, .oxlintrc.json, .oxfmtrc.json).