Skip to content

feat: unify server-owned Agent Node binding and invocation lifecycle - #178

Merged
Yuqing (mydmdm) merged 10 commits into
mainfrom
fix/issue-163
Sep 16, 2026
Merged

Yuqing (mydmdm) merged 10 commits into
mainfrom
fix/issue-163

Conversation

@mydmdm

@mydmdm Yuqing (mydmdm) commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Related to #163. This PR now includes the approved implementation, not only the original design proposal.

  • Make Huabu Server own node-backed invocation lifecycle regardless of agentBindingPolicy; retain the existing status vocabulary and interaction.
  • Persist irreversible Editing-to-Bound confirmation from the canonical Agenetes ThreadRecord, including first-control and internal/external create boundaries.
  • Separate ordinary Canvas edits from trusted binding/invocation projections and result-specific viewed acknowledgement. Preserve current FSM metadata during editable undo.
  • Persist acknowledged draft selection and reuse owner-first binding reads; remove competing browser lifecycle/rescue writes.
  • Preserve dirty authored content while receiving FSM metadata, including mixed-content updates; coordinate pending Question creation, undo, failed paste and restore.
  • Reuse existing portable storage, invocation coordination, Canvas sync and auto-accept/manual-revert behavior. Update architecture and mark the proposal Implemented (pending merge).

Validation

  • Repository pnpm typecheck, pnpm format, and pnpm lint:fix passed; lint has 188 baseline warnings and zero errors.
  • Completion pass: 469 targeted tests across 35 files (334 server, 65 web, 70 shared).
  • After final review fixes: 215 targeted tests across 17 files (106 server, 66 web, 43 shared). These overlap the preceding pass and are not an additive unique-test count.
  • Final review fixes cover failed conversation-paste save blocking, delayed creation resurrecting an undone Question, and non-Question explicit-undefined clearing such as PDF cover removal. Targeted follow-up review found no significant remaining issues.
  • git diff --check passed. Temporary validation artifacts were removed.

Scope and limits

No new recovery workflow, unknown-state UI, FSM framework, storage backend, or upstream subtree changes. Task/Run/Interactive View receive common-path compatibility, not an edge-case redesign. Existing unsupported external conversation fork behavior remains unsupported; failure now rolls back its optimistic copy without blocking unrelated saves. Live external-agent end-to-end execution was not exercised. This PR has not been merged and no release is included.

Yuqing (mydmdm) and others added 8 commits September 13, 2026 09:59
Document execution binding and prompt invocation as separate state dimensions for #163, with Mermaid diagrams and personal-project scope boundaries.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Record the monotonic Editing-to-Bound transition, canonical Agenetes ThreadRecord evidence, storage layout, query boundaries and component ownership in the #163 proposal.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Separate remaining product questions from engineering details, document code gaps and implementation order, and deprioritize Task/Run/View edge-case compatibility for #163.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Separate node reads from edits, FSM transitions and acknowledgements; update complexity assessment and record remaining implementation-readiness details for #163.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

# Conflicts:
#	docs/README.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Separate editable Canvas data from binding and invocation projections, persist acknowledged drafts, and keep browser state observational. Preserve content conflicts, result acknowledgement, identity boundaries, and editable undo.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mydmdm Yuqing (mydmdm) changed the title docs: propose server-owned Agent Node FSM feat: unify server-owned Agent Node binding and invocation lifecycle Sep 15, 2026
Integrate conversation titles and progressive history with server-owned Agent Node lifecycle.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Include the ChatPanel link mutation fix from #193. Follow main's frontend restore behavior while retaining server-owned Agent Node lifecycle and association safeguards.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mydmdm
Yuqing (mydmdm) merged commit 305aea3 into main Sep 16, 2026
5 checks passed
@mydmdm
Yuqing (mydmdm) deleted the fix/issue-163 branch September 16, 2026 07:07
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