Skip to content

feat(web): Add source ingestion workspace#6

Draft
brayan wants to merge 1 commit into
mainfrom
feat/web-add-source-ingestion-workspace
Draft

feat(web): Add source ingestion workspace#6
brayan wants to merge 1 commit into
mainfrom
feat/web-add-source-ingestion-workspace

Conversation

@brayan

@brayan brayan commented Jun 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add authenticated pasted source ingestion in apps/web with account-scoped server validation, thin API routes, and a minimal source composer/list UI.
  • Persist source metadata and exact pasted text as the initial account-scoped source chunk while keeping list responses metadata-only.

Changes

  • Add shared source contracts/schemas and the apps/web/server/sources validation, service, repository, and route-handler helpers.
  • Add /api/sources create/list and /api/sources/[sourceId] read routes gated by current account scope.
  • Add source workspace UI states for signed-out, empty, loading, validation error, and created source list flows.
  • Add synthetic tests for invalid pasted text, exact whitespace preservation, unauthenticated route access, account-scope propagation, and cross-account service filtering.
  • Update architecture, roadmap, testing, failure-case, and cost evidence docs for the implemented pasted-source slice.

Testing

  • pnpm web:test
  • pnpm web:typecheck
  • pnpm web:lint
  • pnpm repo:test:fast

Add account-scoped pasted source contracts, API routes, server service and repository code, and a minimal source composer/list UI.

Store pasted text as the initial account-scoped source chunk while list responses expose source metadata only.

Update synthetic tests and evidence docs for validation, unauthenticated access, and cross-account behavior.

Validation:

- pnpm web:test

- pnpm web:typecheck

- pnpm web:lint

- pnpm repo:test:fast
@brayan brayan self-assigned this Jun 9, 2026
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