Skip to content

[pull] main from tldraw:main#254

Merged
pull[bot] merged 3 commits intocode:mainfrom
tldraw:main
Nov 5, 2025
Merged

[pull] main from tldraw:main#254
pull[bot] merged 3 commits intocode:mainfrom
tldraw:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented Nov 5, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

ds300 and others added 3 commits November 5, 2025 09:22
### Change type

- [x] `other`

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Prevents duplicate `persistence_bad` events by gating the
retry-threshold notification on the `persistenceBad` flag.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ee7483d. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
This PR adds support for 3+ fairies, fairy projects, and it lets fairies
ask other fairies for help, among other general improvements.

### Change type

- [ ] `bugfix`
- [ ] `improvement`
- [ ] `feature`
- [ ] `api`
- [x] `other`

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Adds dynamic 3+ fairy support driven by user configs, introduces
projects/orchestration with new actions, and enhances shared todos with
assignment, coordinates, and in-canvas UI.
> 
> - **Fairies & Config**:
> - Create/dispose agents dynamically from persisted user configs; add
mutators to update/delete single/all configs.
> - Add context/dropdown menus for fairies; new sidebar button to
create/delete/summon/zoom/reset.
> - Support multi-select drag via updated `FairyThrowTool`; tweak sizes
and selection/brush handling.
> - **Projects & Orchestration**:
> - New actions: `enter-orchestration-mode`, `start-project`,
`end-current-project`, `assign-todo-item` with UI (group chat leader
selection) and project state (`$projects`, indicators, colors).
> - Introduce modes (`default`, `orchestrator`, `drone`) with wand
validation and updated wand definitions.
> - Prompt parts: `currentProject`, `personality`; system prompt and
schemas updated accordingly.
> - **Shared Todos**:
> - Extend items with `claimedById`, optional `x/y`, `projectId`;
request help/assign helpers.
> - Persist `showCanvasTodos`; render draggable in-canvas todos
(`TodoDragTool`), toggle from HUD; list UI supports drag-to-canvas,
assign, help.
> - **Chat & UX**:
> - Overhaul chat history: section/grouping, collapsible summaries,
improved action display.
> - Numerous UI/CSS updates for HUD, menus, dropdown portals,
indicators, and config dialog.
> - **Persistence**:
> - Save/restore per-agent state plus shared todo list and
`showCanvasTodos` in file state.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
fdd3220. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: Mime Čuvalo <mimecuvalo@gmail.com>
Co-authored-by: Max Drake <maxdrake46@gmail.com>
Co-authored-by: David Sheldrick <d.j.sheldrick@gmail.com>
This adds @pierre/storage as a trial history storage backend in
staging/preview envs. Seems to work well in local testing.

### Change type

- [ ] `bugfix`
- [ ] `improvement`
- [ ] `feature`
- [ ] `api`
- [x] `other`

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Integrates @pierre/storage to persist snapshots and expose Pierre
history/restore endpoints, with new client routes and UI to browse and
restore by commit (non-production only).
> 
> - **Backend (sync-worker)**:
> - Add `@pierre/storage` and `PIERRE_KEY` support; initialize client
via `createPierreClient` (non-production).
> - Persist each snapshot to Pierre (`snapshot.json` commit) and expose
new endpoints:
> - `GET /file/:roomId/pierre-history` (paginated commits) and `GET
/file/:roomId/pierre-history/:timestamp` (fetch snapshot by commit).
> - `POST /app/file/:roomId/pierre-restore` to restore from a commit;
extend existing restore to handle Pierre vs timestamp.
> - Wire routes in `worker.ts`; update DO to use Pierre for
persist/restore; add constants and error handling.
>   - Bump worker bundle size limit.
> - **Frontend (client)**:
> - New routes: `tlaFilePierreHistory` and
`tlaFilePierreHistorySnapshot`; pages to list commits and view snapshots
using new APIs.
> - `BoardHistoryLog` now accepts `{ timestamp, href }` items and
supports pagination UI.
> - `TlaHistorySnapshotEditor` simplified to accept `onRestore`
callback; update history pages (file/legacy) to use it.
>   - Debug menu adds "File history (pierre)" in non-production.
>   - Update route snapshots.
> - **CI/Deploy**:
>   - Pass `PIERRE_KEY` in GitHub Actions and worker deploy script.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
4d998de. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
@pull pull Bot locked and limited conversation to collaborators Nov 5, 2025
@pull pull Bot added the ⤵️ pull label Nov 5, 2025
@pull pull Bot merged commit 6187cb2 into code:main Nov 5, 2025
@pull pull Bot had a problem deploying to deploy-staging November 5, 2025 15:13 Failure
@pull pull Bot requested a deployment to e2e-dotcom November 5, 2025 15:13 In progress
@pull pull Bot had a problem deploying to deploy-staging November 5, 2025 15:13 Failure
@pull pull Bot had a problem deploying to deploy-production November 5, 2025 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging November 6, 2025 00:22 Failure
@pull pull Bot temporarily deployed to e2e-dotcom November 6, 2025 02:20 Inactive
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants