Skip to content

APR-OBS-001: dogfood observability (OBS-00 + row checklist) #4487

Open

Description

@noahgift

Row OBS-00 of APR-OBS-001 (spec: docs/specifications/APR-OBS-001-dogfood-observability.md, committed on branch la-71/4487-obs-00). Work, contract and done-when: spec §7 row OBS-00; falsifiers §3; hard rules §6; STOPs §8. Owner: aprender-cd (reassigned by the cop 2026-10-05; was aprender-60). Minted by the cop (single-minter). Report per §9.

APR-OBS-001 rows (family folded here per ISSUE-TREE-001, 2026-10-04)

Each row was its own issue; it is closed into this checklist and its body is kept in the closed issue.

Activity

  1. added this to the 0.71.0 milestone on Sep 26, 2026
  2. changed the title [-]APR-OBS-001 OBS-00: schemas + identity block as pv contracts; file infra fleet_perf_dir issue[/-] [+]APR-OBS-001: dogfood observability (OBS-00 + row checklist)[/+] on Oct 4, 2026
  3. 9 remaining items

  4. noahgift commented on Oct 9, 2026

    @noahgift
    MemberAuthor

    OBS-03 (SRV-TIM-001), a fact found while measuring #4483. No action is taken here; the row stays with its owner.

    • On main (acd599e, release 0.70.3), crates/aprender-serve/src/api/qwen35_chat_backend.rs sends no timings block. git log -S timings on that file is empty. A PRM-S1 v2 run against a main-built apr records prompt_ms: null on every Qwen3.5 row. Measured 2026-10-09 on an RTX 4090.
    • The code exists on the 0.70.0 car (6cc64fe20) as three commits: caf6dfa9c8 (Qwen3.5 chat, stream and non-stream), fb88f00e34 (every chat backend) and ec5c4dba25 (/v1/completions). None of them is an ancestor of main or of any v0.70.x tag.
    • That makes this a move, not a rewrite. perf(serve): Qwen3.5 tensor-core prefill projections (RCA-SRV-001 fix 1) #4483's acceptance needs these timings on a main binary; until they land, its receipt takes apr's prefill time from the server's own [qwen35] batched prefill log lines and says so.

    Agent: aprender-wprodmodels

  5. noahgift commented on Oct 12, 2026

    @noahgift
    MemberAuthor

    OBS-00 fold: branch fold/4487-obs-00 @ 0f1cc98 carries 7 commits picked from la-71/4487-obs-00 onto main 03d4af1, plus one fresh regen. The contracts gate is 8/8 green on it.

    Still owed: OBS-TRACE-003, the trace ledger row rule. The branch's contracts/apr-trace-v1.yaml was an older schema stub. Main already has a live apr-trace-v1.yaml for OBS-09, cited by crates/aprender-serve/src/api/serve_trace.rs, which discharges FALSIFY-OBS-TRACE-001/002 with real tests. The fold keeps main's file. The one part of the stub that main does not have is still owed and must come with the trace-ledger writer PR:

    • the equation row_admissible: a trace.jsonl row carries the §2.1 identity block, schema = "apr-trace-v1", the keys {trace_level, provenance, wall_ms, steps, payload_path, payload_sha256}, and sha256(read(payload_path)) = payload_sha256;
    • FALSIFY-OBS-TRACE-003: a row whose payload_sha256 does not match its side file is inadmissible;
    • the obligation "the row pins its payload".

    The stub text is at la-71/4487-obs-00:contracts/apr-trace-v1.yaml.

    🤖 Generated with Claude Code

  6. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    merged into #5305 (master ticket for epic #3598; triage rule 7b, 2026-10-14). It is a checklist row there; reopen this issue when work on it starts or its PR opens.

  7. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    Moved: this sub-ticket is now a row in #5322 (Speed measurement harness: resource receipts, observability and the ollama/llama.cpp ratio), split out of #5305 by theme.

  8. modified the milestones: 0.71.0, 0.73.0 on Oct 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High priorityowner:aprender-cdOwned by session aprender-cdsize:MK̂ 3-4 h

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions