The TEST-s branch carried a patch-equivalent Popi.TV login commit that conflicts with newer API routing files when merged normally. This merge records TEST-s as a parent while keeping the already verified master tree unchanged, so the test branch can fast-forward without a force push.
Constraint: Do not force-push TEST-s or hand-resolve unrelated API route conflicts for a text-node rollout.
Rejected: Force push HEAD to TEST-s | would drop the remote branch commit from visible history.
Rejected: Manual content merge | conflicts are outside this text document node change and the remote patch is already represented locally.
Confidence: medium
Scope-risk: narrow
Directive: Revisit TEST-s ancestry before future long-lived branch syncs; avoid carrying duplicate patch-equivalent commits across master and TEST-s.
Tested: git diff --stat 7281d4f..HEAD is empty
Tested: prior text node verification on 7281d4f: vitest target suite, next build, git diff --check
Not-tested: Full test suite after ancestry-only merge, because the tree is identical to 7281d4f.
Prompt nodes now accept TXT, Markdown, and DOCX uploads while preserving the node contract as plain prompt text. The canvas preview shows imported Markdown as a lightweight document card, and DOCX extraction stays local to body text so generation inputs remain deterministic.
Constraint: Text-class nodes must still output plain text into existing workflow edges.
Rejected: Add a full document editor/parser layer | too broad for the requested node-level upload and preview behavior.
Confidence: high
Scope-risk: moderate
Directive: Keep uploaded document data normalized to prompt text unless downstream nodes explicitly gain rich document inputs.
Tested: npm run test:run -- src/components/__tests__/PromptNode.test.tsx src/components/modals/__tests__/MarkdownEditorModal.test.tsx src/utils/__tests__/textDocumentImport.test.ts --reporter=dot
Tested: npm run build
Tested: git diff --check
Not-tested: npm run lint still fails because Next 16 treats the existing next lint script as a /lint project path.