Description
Background
One-shot import solves historical data ingestion, but users also need ContextSeek to continuously receive new context generated by tools such as Cursor, Codex, and Claude Code.
The codebase already has early DataPlug, watcher, sync hash/file record, and Ingress page foundations, but the system is not yet a complete configurable and observable ingestion layer.
UI Scope
Ingress / DataPlug page.
Proposal
- Allow users to add, edit, and delete watch sources from the Ingress page.
- A watch source should include source type, path, scope, and enabled/disabled state.
- Persist watch configuration on the backend.
- Run or reload watcher based on the configured sources.
- On file changes, call the matching importer for incremental ingestion.
- Reuse sync hash / file record mechanisms to avoid duplicate imports.
- Show status for each watch source, including last sync time, imported count, recent events, and errors.
- Support watcher reload after config changes, or show a clear restart requirement.
Acceptance Criteria
- A user can create a watch source from the Ingress page.
- The watch source continuously monitors new or changed content.
- New content is incrementally imported into ContextSeek.
- Duplicate content is not repeatedly written.
- The UI shows sync status, last sync time, and failure reasons.
- Deleted or disabled watch sources stop syncing.
Description
Background
One-shot import solves historical data ingestion, but users also need ContextSeek to continuously receive new context generated by tools such as Cursor, Codex, and Claude Code.
The codebase already has early DataPlug, watcher, sync hash/file record, and Ingress page foundations, but the system is not yet a complete configurable and observable ingestion layer.
UI Scope
Ingress / DataPlug page.
Proposal
Acceptance Criteria