Skip to content

feat(shared): move canvas/design/comment/pipeline types into @app/shared - #33

Open
espetro wants to merge 3 commits into
mainfrom
feat/shared-types-reorg
Open

feat(shared): move canvas/design/comment/pipeline types into @app/shared#33
espetro wants to merge 3 commits into
mainfrom
feat/shared-types-reorg

Conversation

@espetro

@espetro espetro commented Aug 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • Move Point/ToolMode (canvas), CanvasImage/DesignIteration/GenerationGroup/SummaryData (design), comment types, and pipeline types from apps/web/src/shared/types/* into packages/shared/src/types/*.
  • apps/web/src/shared/types/* now re-export from @app/shared — pure move, no shape changes, no consumer imports touched.

Second of 5 stacked PRs splitting an uncommitted working tree (see .agents/plans/2026-08-20-split-uncommitted-tree-into-5-prs.md). Base: main. feat/canvas-react-flow (PR4) will rebase onto this after merge.

Closes #27

Test plan

  • bunx turbo typecheck --filter=@app/shared --filter=@app/web
  • apps/web test suite: 103 tests passed (12 files), unaffected by the pure re-export

Exact pin 4.0.23 shadowed the hoisted 4.0.26 that ai@6.0.175 requires,
breaking @app/core's image generation module at runtime (missing
isNonNullable export). Use caret range so bun dedupes to one copy.
Pure move: apps/web/src/shared/types/* now re-export from @app/shared
instead of declaring the types locally. No shape changes, no consumer
imports touched.

Refs #27
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying calca with  Cloudflare Pages  Cloudflare Pages

Latest commit: 24b40cc
Status: ✅  Deploy successful!
Preview URL: https://0a401bc7.calca-5u3.pages.dev
Branch Preview URL: https://feat-shared-types-reorg.calca-5u3.pages.dev

View logs

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.

feat: shared types reorg into @app/shared (PR2)

1 participant