Ecosystem dependency
LineageWeave issue ContextualWisdomLab/LineageWeave#277 now consumes TEPP's
merged AnalysisRunStatus / AnalysisRunTerminalResult v1 Rust contract
through a pluggable status-read port. TEPP PR #157 explicitly left the
production HTTP service out of scope, so the consumer cannot safely infer a
route, polling cadence, or backoff policy.
Required provider-owned slice
- expose the existing strict DTO through executable
GET /v1/analysis-runs/{run_id} (or record a different versioned route in the
approved API contract before implementation);
- authenticate and authorize tenant/workspace access without leaking hidden
run existence;
- preserve idempotency-key, request, receipt, snapshot, cutoff, model,
profile, artifact, schema, digest, and terminal-failure bindings;
- return accepted/running without measurement evidence and exactly one
terminal DTO for succeeded/failed;
- publish evidence-based retry/deadline semantics rather than a guessed poll
interval;
- keep source text, direct identity, respondent/item records, credentials,
and unrestricted model output outside the status response;
- test size limits, unknown fields, cross-tenant denial, replay, changed
digest, cancellation/races, crash recovery, concurrent readers, and real
loopback/service execution;
- document Compose/service readiness and immutable release evidence.
Acceptance
LineageWeave can configure the provider-owned status transport, persist a
request-bound terminal result after an accepted receipt, and demonstrate the
end-to-end lifecycle without implementing any statistical arithmetic or
inventing a retry coefficient locally.
Ecosystem dependency
LineageWeave issue ContextualWisdomLab/LineageWeave#277 now consumes TEPP's
merged
AnalysisRunStatus/AnalysisRunTerminalResultv1 Rust contractthrough a pluggable status-read port. TEPP PR #157 explicitly left the
production HTTP service out of scope, so the consumer cannot safely infer a
route, polling cadence, or backoff policy.
Required provider-owned slice
GET /v1/analysis-runs/{run_id}(or record a different versioned route in theapproved API contract before implementation);
run existence;
profile, artifact, schema, digest, and terminal-failure bindings;
terminal DTO for succeeded/failed;
interval;
and unrestricted model output outside the status response;
digest, cancellation/races, crash recovery, concurrent readers, and real
loopback/service execution;
Acceptance
LineageWeave can configure the provider-owned status transport, persist a
request-bound terminal result after an accepted receipt, and demonstrate the
end-to-end lifecycle without implementing any statistical arithmetic or
inventing a retry coefficient locally.