Skip to content

[feat] web: create Director Stage nodes that save and reopen - #328

Open
MrDongsls wants to merge 4 commits into
ThinkFlowLab:mainfrom
MrDongsls:feat/stage-node-entry
Open

MrDongsls wants to merge 4 commits into
ThinkFlowLab:mainfrom
MrDongsls:feat/stage-node-entry

Conversation

@MrDongsls

@MrDongsls MrDongsls commented Nov 14, 2026 •

Copy link
Copy Markdown
Contributor

Refs #241

Summary

The creation menu and tool rail can create a Director Stage node, the editor opens right after creation, and the stage document persists through apply, close, and reopen. This is slice 1 of 4 delivering #241; the import pipeline, output assets, and agent publishing land on top in #329, #330 and #331.

  • src/canvas/creationTools.ts registers the external Director Stage entry; src/canvas/workspace/useWorkspaceInteraction.tsx opens the editing session for the new node.
  • The external node's editor binding projects to a director editor document, covered by backend contract tests in tests/test_creation_director.py.
  • tests/browser/director_stage_entry.mjs covers create, edit, apply, reopen, undo and redo in both en-US and zh-CN.

Linked issue

Labels

  • type:feat, area:canvas

Test plan

  • Local, run at this PR's head: npx tsc --noEmit clean; npm test 676/676; npm run check:i18n 0 problems; .venv/bin/python -m pytest tests/test_creation_director.py 1 passed; node tests/browser/director_stage_entry.mjs and DIRECTOR_STAGE_LOCALE=zh-CN node tests/browser/director_stage_entry.mjs both pass (checks: shared creation toolbar entry, automatic editor opening, external node projects to director document, keyframes persist and reopen, undo and redo preserve identities, no page errors).
  • Left to CI: full pytest suite, Release checks.
  • Not run: nothing outstanding for this slice.

Evidence that it works

  • Stage editor opened from the creation menu at this head, on the isolated tests/browser/creation_server.py backend:
    stage entry

Provider verification

  • No real-provider calls; the flow is local canvas and document behavior against the isolated fixture backend.

Bilingual UI

  • No user-facing copy changed in this slice.

@MrDongsls
MrDongsls force-pushed the feat/stage-node-entry branch 2 times, most recently from 4c94079 to 25b41bc Compare November 15, 2026 03:26
- Enable the Director Stage entry in the shared creation toolbar and
  open the stage editor automatically after creating the node.
- Pin node, document, and keyframe identity across editor.save, undo,
  redo, and storage reload with a service-level command test.
- Add a browser acceptance flow covering creation, editing, undo,
  redo, and reopen, runnable in en-US and zh-CN via
  DIRECTOR_STAGE_LOCALE.

- npm test (676 passing at this commit's tree state).
- .venv/bin/python -m pytest tests/test_creation_director.py.
- node tests/browser/director_stage_entry.mjs plus the
  DIRECTOR_STAGE_LOCALE=zh-CN run, against the isolated
  creation_server.py fixture.

Refs: ThinkFlowLab#241
@MrDongsls
MrDongsls force-pushed the feat/stage-node-entry branch from 25b41bc to 8528e1c Compare November 15, 2026 03:36
@MrDongsls
MrDongsls marked this pull request as ready for review November 15, 2026 05:08
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 15, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-15T05:14:07.991981Z ad67e44 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions github-actions Bot added area:canvas Canvas, nodes and direct manipulation type:feat New capability or behaviour labels Nov 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:canvas Canvas, nodes and direct manipulation type:feat New capability or behaviour

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant