Skip to content

Implement REST capability boundaries for the first vertical slice - #3

Draft
sfloess wants to merge 78 commits into
mainfrom
implementation/rest-capability-boundary
Draft

sfloess wants to merge 78 commits into
mainfrom
implementation/rest-capability-boundary

Conversation

@sfloess

@sfloess sfloess commented Nov 1, 2026 •

Copy link
Copy Markdown
Member

Summary

This PR advances the existing REST-first implementation branch and removes direct in-process capability wiring from ingestion/search orchestration.

  • Adds independently addressable REST contracts for chunking, embeddings, and indexing.
  • Routes document ingestion through those contracts.
  • Routes search candidate enumeration and query embedding through the index and embedding contracts.
  • Uses ASGI-backed HTTP transport while capabilities are co-located, preserving HTTP routing, request validation, and JSON serialization.
  • Adds explicit API contract coverage for the capability endpoints.
  • Keeps the existing durable store, migration behavior, revision semantics, and public document/search contracts.
  • Corrects architecture, REST contract, implementation-status, and capability migration documentation.

Boundaries and known limitations

No POC services or POC data are accessed or modified. Authentication, partition enforcement, a dedicated vector index, bounded retrieval, reranking, graph, memory-specific endpoints, and production deployment hardening remain future work. The current full chunk enumeration and JSON vector scan are not production-scale retrieval claims.

The legacy SQLite Index compatibility issue was resolved with an explicit boundary decision: Ensemble does not migrate, rebuild, or import historical CE/POC Index databases. Those remain untouched under their existing owner. Any future import must use an explicit API or export/import process.

Verification

  • GitHub Actions run 41362550739: passed, including install and test steps.
  • Earlier implementation commit run 41362407372: passed.

Do not merge until the diff has been reviewed.

@sfloess
sfloess marked this pull request as draft November 1, 2026 23:37
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