Skip to content

fix(import): upload browser files for local tasks - #2802

Open
HandSonic wants to merge 2 commits into
OtterMind:mainfrom
HandSonic:fix/web-local-file-import
Open

HandSonic wants to merge 2 commits into
OtterMind:mainfrom
HandSonic:fix/web-local-file-import

Conversation

@HandSonic

@HandSonic HandSonic commented Aug 29, 2026 •

Copy link
Copy Markdown
Contributor

Uploads standard browser File objects through a bounded multipart endpoint while preserving the desktop path contract. Uses owner-only staging, atomic task/input journal events, durable tokenized cleanup markers and trusted-root recovery so accepted, rejected, canceled, failed, terminal, and restart paths clean safely. Includes JSDOM File/FormData, MockMvc endpoint, permission, journal, lifecycle, and restart tests.

Latest-main revalidation (2026-09-04)

  • Rebased as one commit onto upstream 144a04e; current head 9adc500.
  • Full backend modules passed: tools 68/68, domain-core 238/238, storage 58/58, web 92 passed plus 1 platform-specific skip.
  • Targeted frontend ESLint, full Community prebuild, Umi/Webpack production build, and bundle verifier passed.
  • Playwright on this branch verified real file selection, multipart filename/bytes/JSON fields, disabled submit while pending, and exactly one upload after repeated clicks; browser console had no errors.
  • A separate on-wire Chromium FormData probe confirmed a concrete Content-Length header (411 bytes).

@HandSonic
HandSonic requested review from a team and openai0229 as code owners August 29, 2026 20:50
@openai0229 openai0229 moved this to In Review in Chat2DB Community Aug 29, 2026
@HandSonic

Copy link
Copy Markdown
Contributor Author

Exhaustive cross-PR integration update: the full 72-PR pairwise scan found the expected ArtifactService/test overlap among #2800, #2742, and #2802. I resolved it semantically in an isolated combined tree (atomic publication + durable deletion recovery + input cleanup), adapted the post-merge constructor/method signatures, and ran the full 9-module reactor: tools 68, domain-api 27, SPI 142, domain-core 256, storage 64, web 95 (1 environment skip), all with 0 failures/errors.

Align existing OtterMind/Chat2DB PR OtterMind#2802, retaining its focused behavior and current Community contracts.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Review

Development

Successfully merging this pull request may close these issues.

2 participants