Fix CLAUDE.md frontend-architecture drift (solve loop / main.ts)

Open Beginner friendly
#45 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
84/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Quiet
Tech stack
typescript
Domain
documentation

Research direction

Start with the “Frontend architecture” section in CLAUDE.md, then inspect frontend/src/main.ts, frontend/src/station/, and frontend/src/sync.ts. Compare the documented module layout and symbols with those paths, remove the stale solve-loop references, and finish when the section matches the current files and describes diff-based sync through flush().

Written by the indexing model from the issue text.

Description

Problem

CLAUDE.md is the onboarding contract for future sessions, and its "Frontend architecture" section has drifted from reality:

main.ts owns the solve loop. runSolve() is the single re-entrancy guard around solveAllPhotos().

Neither runSolve nor solveAllPhotos exists anywhere in the codebase. main.ts is now ~1.6KB of URL routing that dispatches to mountStationPage() / mountIndexPage(). The orchestration moved into the frontend/src/station/ subdirectory (data-controller.ts, interactions.ts, wiring.ts) with backend sync handled by sync.ts's flush().

A stale architecture section is worse than none — it actively misdirects.

Proposed work

Update the "Frontend architecture" section of CLAUDE.md to describe the current shape:

  • main.ts = URL parsing + route dispatch only.
  • The station/ subdir holds the per-station composition root and controllers.
  • Backend sync is diff-based via sync.ts flush(), not a runSolve() loop.

Audit the rest of that section while in there for other symbol/structure drift (e.g. the module bullet list vs. the actual frontend/src/ tree).

Acceptance criteria

  • CLAUDE.md no longer references nonexistent runSolve / solveAllPhotos.
  • The described module layout matches the actual files.

References

  • frontend/src/main.ts, frontend/src/station/, frontend/src/sync.ts
  • CLAUDE.md "Frontend architecture"
Dominant language
TypeScript
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from bmander/panorama-builder

All issues in bmander/panorama-builder

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.