[verified] build discovery runs workspace
This commit is contained in:
+3
-1
@@ -133,7 +133,9 @@ Phase 14 is not implemented as a live outreach workflow. The current static clie
|
||||
|
||||
## Remaining limitations
|
||||
|
||||
The static client has no client-side crawler, scanner, contact extractor, enrichment scheduler, outreach integration, availability provider, or SSE delivery. It can display server-provided Phase 9 observations, but production still requires server-side official-site scoping, SSRF/DNS-rebinding/redirect controls, hard extraction/page/byte/time/candidate budgets, durable history/cache isolation and retention/deletion, abuse/rate controls, suppression regression tests, and authenticated provenance/audit coverage. For domain intelligence, display registrable-domain/PSL version and unresolved reasons, DNS status and freshness/TTL (not “available”), independent MX/NS/TXT uncertainty, and association confidence with explainable evidence. Never auto-attach candidate domains or treat `nxdomain`/`no_data` as availability. CSV preview is capped for display and is not an import workflow.
|
||||
The Discovery Runs workspace is a static client over the existing authenticated contracts: `POST /api/v1/discovery` creates a bounded run, `GET /api/v1/discovery-runs` lists run history, and `GET /api/v1/jobs/{id}` supplies progress/events. It sends category/geography criteria, selected approved source IDs, max records, daily limit, schedule metadata, dry-run intent, optional seeds, and an idempotency key. The UI polls persisted job state, renders independently scrollable logs, metrics, partial/error states, and source-health telemetry when returned. CSV/manual source management continues to use `GET/POST/PATCH /api/v1/sources`, `POST /api/v1/sources/{id}/test`, and `GET /api/v1/source-records`; provider configuration remains read/write-only through the existing AI provider routes.
|
||||
|
||||
Pause/resume and per-source retry/circuit buttons are deliberately fail-closed because the current backend exposes no matching mutation routes. The UI documents the expected future names (`POST /api/v1/jobs/{id}/pause`, `POST /api/v1/jobs/{id}/resume`, and source-run retry/circuit endpoints) instead of pretending those actions succeeded. Cancel uses the existing `POST /api/v1/jobs/{id}/cancel` contract. Prospect explorer filters use server query fields where available and apply safe client-side matching for returned source, geography, category, website/domain, and contact fields. The browser never fetches targets or stores secrets in localStorage.
|
||||
|
||||
## Phase 13 optional AI assistance UI contract
|
||||
|
||||
|
||||
Reference in New Issue
Block a user