SPB Git

spb/wpai0002_uqo

Public
5.3 KB

# Implementation checklist

State on 2026-11-09, read from the repository. Legend:

  • exists, with evidence.
  • [~] partial or in progress.
  • missing.

Tests (tests/unit, tests/integration) were not re-run when this checklist was written.

# Phase 0 — Audit and feasibility

  • Project directory and identifier AI-0002; no collision (CLAUDE.md)
  • Mandate reproduced verbatim (docs/MANDATE.md)
  • Hardware and library capture in every run header (utils/provenance.py)
  • Literature gap with 85 verified sources (docs/RESEARCH_GAP.md, docs/literature/verified_sources.jsonl, paper/references.bib)
  • Research plan, licence matrix, experiment matrix, compute budget, reproducibility, pre-registration draft, decision log, risk register (this documentation set)
  • docs/STATUS.md. It is referenced by CLAUDE.md but does not exist.

# Phase 1 — Historical corpus

  • PMC adapter on the AWS bucket: metadata first, licence filter, MD5 verification (ingest/pmc_s3.py); manifests seed 1 and seed 2
  • JATS parser: sections, roles, offsets, pub-date evidence, licence evidence, inline math, references excluded (parse/jats.py)
  • Books: Gutenberg (catalog, mirror, front-matter dating), NCBI Bookshelf BITS, OpenStax via IA (ingest/books.py, parse/books.py); trial corpora built
  • [~] arXiv OAI-PMH + LaTeX parser (ingest/arxiv_oai.py, parse/latex.py; uncommitted edits; no discovery manifest yet; data/raw/arxiv empty)
  • [~] PDF parsing (parse/pdf.py just added, untracked)
  • Crossref economics and finance journals (ingest/crossref.py, configs/data/crossref_journals.json are missing)
  • configs/data/books_sources.json. It is referenced in the docstring of ingest/books.py but is missing.
  • Language identification, quality score, passage eligibility (parse/quality.py, segment/passages.py)
  • MinHash near-duplicate and exact duplicate detection (dedup/minhash.py)
  • Leakage-safe splits (cluster ∪ author group; held-out discipline and period; --fixed) (data/splits.py)
  • [~] Venue-safe splits: SplitConfig.venue_safe exists, but make_splits.py exposes no flag for it
  • [~] Corpus at pilot scale: 1 180 PMC docs and 23 658 passages, plus books trials. Medium target (≥ 10 000 docs, ≥ 200 000 passages): pending
  • Stratified sampling plan across sources, disciplines and eras (written plan with quotas)

# Phase 2 — Rewriting engine

  • Versioned prompts A–E and held-out prompts H1/H2 (rw-1.0, fingerprint)
  • Anthropic adapter: pinned model, request id, usage, cost, backoff, refusals, batches
  • Engine: deterministic ids, append-only results, ledger, resume, concurrency, live budget stop
  • Mock provider; vertical-slice mock jobs (data/pairs/mock_smoke, vs_smoke; 0 USD)
  • Pre-submission budget check in batch mode
  • Real pilot (Gate B): no live spend yet

# Phase 3 — Pair quality

  • Automated checks: length, copy/unrelated, language, placeholders, numbers, entities (proxy), negation/hedges, structure (D), artefacts, optional MiniLM similarity (validate/checks.py)
  • Quarantine instead of drop, acceptance by variant (validate/pairs.py)
  • Bidirectional entailment (NLI)
  • Human review tooling and protocol for stratified samples

# Phase 4 — Architectures

  • B0 identity, B1 rule-based paraphrase
  • B2 pretrained encoder–decoder fine-tune (training/hf_finetune.py is referenced but missing)
  • M1, M2, M3 (copy gate, style branch, prototypes, GRL adversary) (models/transformer.py)
  • Objective terms and ablation presets (models/losses.py, scripts/train.py)
  • Hierarchical, section-level chunking and cross-paragraph consistency

# Phase 5 — Training

  • AdamW, warmup + cosine schedule, gradient accumulation, clipping, early stopping, resumable SafeTensors checkpoints, 6ND FLOPs, accelerator seconds
  • One-batch overfit test (vs_smoke-m1-nano: CE 5.28 → 0.0022)
  • [~] Mixed precision: bf16 on CUDA only; MPS stays fp32
  • Activation checkpointing, profiling and memory estimation, distributed training
  • Throughput benchmark per design point and node

# Phase 6 — Evaluation

  • Lexical and factual metrics, document-clustered bootstrap, paired differences vs B0, breakdowns by stratum, stylometric W1, exploratory probe (evaluation/)
  • Holm correction; bootstrap at 10 000 resamples for confirmatory analyses
  • Disjoint split for fitting the style probe
  • Non-identifiability test (E14), memorisation audit (E15), calibration (E18)
  • Human evaluation (E16)
  • [~] Vertical-slice evaluation: B0/B1 predictions exist; M1 predictions and artifacts/metrics/ are empty
  • PREREGISTRATION v1.0 frozen

# Phase 7 — Release

  • Inference API HTRReconstructor with placeholder restoration, warnings and notice (inference/pipeline.py)
  • htr/cli.py. It is declared in pyproject.toml (htr = htr.cli:main) but is missing.
  • htr/release/: HF-style export, model card generator, benchmark bundle, ATTRIBUTION.tsv
  • model_cards/, demo/: both empty
  • Security, privacy and copyright review; clean-environment test

# Phase 8 — Paper

  • paper/references.bib, verified
  • paper/main.tex, supplement.tex, sections, figures, tables

# Gates

  • A — GO (docs/gates/GATE_A.md)
  • B · [ ] C · [ ] D · [ ] E · [ ] F
Files · 0bfd2d4f2bd3612415cfd6a8d68f31806d44a179
Menu

Theme