Skip to content

feat(api): GET retry children from published tepp-retry-lineage CLI - #403

Draft
seonghobae wants to merge 1 commit into
feat/analysis-run-retry-lineage-consumer-parity-gap-003afrom
feat/analysis-run-retry-lineage-cli-gap-003a
Draft

feat(api): GET retry children from published tepp-retry-lineage CLI#403
seonghobae wants to merge 1 commit into
feat/analysis-run-retry-lineage-consumer-parity-gap-003afrom
feat/analysis-run-retry-lineage-cli-gap-003a

Conversation

@seonghobae

Copy link
Copy Markdown
Contributor

Why

GAP-003A / issue #166 still has no published CLI that GETs /retries from the typed naruon/LineageWeave retry-lineage exchange onto spawned tepp-loopback TCP. ADR 0035 / #379 owns retry-lineage GET. ADR 0045 / #399 owns consumer-parity exchanges. Operators still had to embed the library or invent HTTP. Retry CLI (#394) and retry-parent CLI (#400) live on diverged stacks that lack retry-lineage GET.

Live slices that this PR does not duplicate:

What

Unique GAP-003A retry-lineage CLI slice stacked on #399 over protected main 1bc02f580cf48e1d39da239f0e818453437c31c3:

  • published tepp-retry-lineage retries mints naruon_analysis_run_retry_lineage_exchange or lineageweave_analysis_run_retry_lineage_exchange and renders through loopback_http1_from_retry_lineage_exchange
  • --origin stays the published HTTPS origin; only --host is the loopback bind address printed by tepp-loopback
  • empty stdin is required; nonempty GET bodies fail closed
  • success stdout is a metric-free 200 OK inspect ("retries": [] when the parent was never retried)
  • public bind hosts, localhost, unpublished consumers, credential-shaped flags, metric keys, and http:// origins fail closed
  • does not add GET to NaruonLiveService beyond the Naruon-only compatibility inspect already owned by ADR 0045; LineageWeave remains refused there
  • ADR 0048

Not an ADR 0014 scientific claim. Not retry-lineage GET. Not retry-lineage consumer-parity. Not retry CLI. Not retry-parent CLI. Persistence remains GAP-003B.

Verification

  • cargo clippy -p tepp_api --all-targets -- -D warnings
  • cargo test -p tepp_api --test analysis_run_retry_lineage_cli_contract
  • cargo test -p tepp_api --lib --tests
  • cargo doc -p tepp_api --no-deps
  • python3 scripts/validate_documentation.py
  • python3 scripts/check_docstrings.py

Stacking

Base is feat/analysis-run-retry-lineage-consumer-parity-gap-003a (#399). Merge #399 first or retarget onto main after #399 lands. No force-push.

Head: 2c95104774c0e609d856ba8ecbde7f594703273d

GAP-003A retry-lineage CLI (ADR 0048): operators run tepp-retry-lineage
retries to mint typed naruon/LineageWeave GET /v1/analysis-runs/{run_id}/retries
onto spawned tepp-loopback TCP. Inspect stays metric-free. Persistence
remains GAP-003B. Does not duplicate retry-lineage GET (#379), consumer
parity (#399), retry-parent CLI (#400), or lookup CLI (#401).
@coderabbitai

coderabbitai Bot commented Aug 31, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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