Skip to content

feat: evolve the SPA into a portable drafting workbench - #15

Merged
TingTung93 merged 9 commits into
mainfrom
feat/drafting-workbench
Jul 28, 2026
Merged

feat: evolve the SPA into a portable drafting workbench#15
TingTung93 merged 9 commits into
mainfrom
feat/drafting-workbench

Conversation

@TingTung93

Copy link
Copy Markdown
Owner

Summary

  • separate product identity from Ask Sage provider branding and introduce provider-neutral portable contracts
  • add capability probing and adapters for Ask Sage, GenAI.mil, OpenRouter, OpenAI-compatible APIs, and keyless local LLMs with native-tool or prompt fallback paths
  • add one durable proposal, preview, approval, revision, recovery, and undo lifecycle for template sections, template paragraphs, freeform blocks, and freeform paragraphs
  • add stable target identity, stale-target protection, explicit source scope, bounded relevance selection, citation validation, and provenance review
  • unify direct controls, command palette, chat commands, and guarded keyboard shortcuts through one action controller
  • improve responsive and accessible workspace behavior, clarify route ownership, and rebuild the tracked single-file release artifact

Why

The SPA had accumulated provider-specific assumptions and several disconnected drafting/editing surfaces. This change establishes a cohesive provider-neutral architecture and a review-first editing lifecycle that works consistently across cloud and local providers without silently mutating documents.

User impact

Users can configure a broader range of API providers, including local OpenAI-compatible models, inspect capability limitations, target precise document regions, control grounding sources, review citation provenance, recover interrupted work, and safely accept, reject, revise, or undo edits. Existing data identifiers and legacy routes remain compatible.

Validation

  • npm run typecheck
  • npm test — 102 files, 754 tests passed
  • npm run build
  • rebuilt release/index.html as the reviewed single-file artifact

Notes

  • V2 owns project drafting.
  • Documents remains the specialized existing-DOCX editing surface.
  • Legacy ProjectDetail is maintenance-only and is not removed in this release.
  • Provider behavior and data-suitability guidance are documented in the updated user and release documentation.

@TingTung93
TingTung93 marked this pull request as ready for review July 28, 2026 11:58

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dd30eafd2c

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/components/v2/drafting/EditSessionPanel.tsx
Comment thread src/components/v2/V2DraftPane.tsx
Comment thread src/components/v2/drafting/useDraftEditingSession.ts
Comment thread src/components/v2/drafting/RevisionTimeline.tsx Outdated
Comment thread src/components/v2/V2ProjectWorkspace.tsx
Comment thread src/components/v2/drafting/useDraftEditingSession.ts
@TingTung93

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3c4d9883cd

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/components/v2/drafting/useDraftEditingSession.ts
Comment thread src/components/v2/drafting/useDraftEditingSession.ts
Comment thread src/components/v2/V2DraftPane.tsx Outdated
Comment thread src/components/v2/V2DraftPane.tsx
@TingTung93
TingTung93 merged commit 66e8008 into main Jul 28, 2026
2 checks passed
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