Skip to content

Scribble lab#144

Open
anazri-seek wants to merge 16 commits into
everest-engineering:mainfrom
anazri-seek:scribble-lab
Open

Scribble lab#144
anazri-seek wants to merge 16 commits into
everest-engineering:mainfrom
anazri-seek:scribble-lab

Conversation

@anazri-seek

@anazri-seek anazri-seek commented Jun 24, 2026

Copy link
Copy Markdown

Summary

Brownfield enhancement of the Scribble starter: added Spec Kit artifacts and implemented all four lab scenarios on scribble-lab (16 commits, phase by phase).

Artifacts: discovery notes, constitution, four feature spec/plan/tasks folders (001–004), and reflection.md.

Implementation highlights:

  • Host tracking, lobby polling (~2s), host-only start (2+ players)
  • Name and room-code validation with clear errors
  • Drawer assignment, deterministic secret word, word hidden from guessers until result
  • Drawing canvas + clear, guess submission, synced history/scores via polling
  • Result screen and host restart back to lobby
  • Fixed frontend API default URL (/bug → correct base)
    All sync is HTTP polling; no WebSockets, DB, or auth. Builds and tests pass.

Contributor

anazri-seek and others added 16 commits June 24, 2026 13:43
Document starter gaps, assumptions, and relevant files before
implementation. Establish engineering principles and AI usage rules.

Co-authored-by: Cursor <cursoragent@cursor.com>
Define acceptance criteria for host tracking, join validation,
lobby polling, and host-only game start (Scenario 1).

Co-authored-by: Cursor <cursoragent@cursor.com>
Set hostId on room creation and validate host-only game start
with a minimum of two players before transitioning to playing.

Co-authored-by: Cursor <cursoragent@cursor.com>
Expose POST /rooms/:code/start for host-only game start. Validate
room code format and return clearer join/not-found error messages.

Co-authored-by: Cursor <cursoragent@cursor.com>
Fix default base URL and extend room snapshot types with hostId.
Add startGame store method backed by POST /rooms/:code/start.

Co-authored-by: Cursor <cursoragent@cursor.com>
Poll room state every 2 seconds, show host badge, gate start button
to host with two-player minimum, and navigate all clients to game.

Co-authored-by: Cursor <cursoragent@cursor.com>
Reject empty or malformed room codes with clear messages before
calling the API. Add startRoom API test coverage.

Co-authored-by: Cursor <cursoragent@cursor.com>
Define acceptance criteria for name validation, drawer assignment,
deterministic word selection, and drawer-only word visibility.

Co-authored-by: Cursor <cursoragent@cursor.com>
Validate trimmed player names, select word deterministically from
room code, and expose secretWord only to the drawer in snapshots.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Validate player names on create/join forms, poll during gameplay,
and display role-specific UI including drawer-only secret word.

Co-authored-by: Cursor <cursoragent@cursor.com>
Cover gameplay interaction (drawing, guesses, scoring) and result
state with host-only restart back to lobby (Scenarios 3 and 4).

Co-authored-by: Cursor <cursoragent@cursor.com>
Support stroke sync, canvas clear, guess submission with scoring,
and host-only restart. Reveal secret word to all on result state.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Add interactive canvas with stroke sync, guess form with validation,
guess history display, result panel, and host restart flow.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant