This card states what the evidence record can and cannot support for WPM — derived, field by field, from the registered artifacts listed under SOURCES. States such as PENDING, UNKNOWN, NOT_APPLICABLE, NOT_ESTIMABLE and INSUFFICIENT_EVIDENCE are findings in their own right: they say precisely how far the record goes today. Nothing on this card is chosen by hand; re-running the renderer against the same artifacts reproduces it byte for byte.
Research state here never translates to a trading signal, score, or portfolio action — the two vocabularies are structurally separated and gate-enforced.
| artifact | role |
|---|---|
registry/research_state.json | Research-State Derivation v1 (the derivation this card renders through) |
registry/completeness_profile.json | evidence coverage per family |
registry/discovery_ledger.json | discovery context, hypothesis lineage, family adjudication |
registry/anytime_record.json | sequential-evidence enrollments |
registry/truncation_ledger.json | truncation & error budget entries |
registry/protocols.jsonl | the canonical chain every artifact above derives from |
derivation anchor (chain tip): ac51ddfe97eb709a368f15f2aa6af9ab759ea4d319f48f45eeb121736d82d0c3
Evidence families observed for WPM — each family is one independent line of evidence in the completeness profile:
| family | state |
|---|---|
| canada_sedi | UNKNOWN |
| corporate_actions | HIGH |
| foreign_filings | HIGH |
| insider_form4 | NOT_APPLICABLE |
| macro_series | NOT_APPLICABLE |
| pricing | MEDIUM |
| sec_primary | NOT_APPLICABLE |
Cross-family independence is declared, not measured: the dependency profile below is PENDING until the registered layered-dependency read exists.
layered-dependency family registered (layered-evidence-dependency-spec, REGISTERED) — no name-scoped read yet
Platform component context (registered reads, verbatim):
| state | registered annotation |
|---|---|
| INCONCLUSIVE | C6 second read under v2. Verdict: INCONCLUSIVE. Arms (late/live): elevated 11 (11/0), normal 34 (34/0); k10-complete 0/1. Late lags min/med/max {'min': 1, 'median': 3, 'max': 15}. Projection: ~-0.2 more weeks of accrual for the elevated arm to reach 10 issuer-days (rate 5.5/wk), plus ~2 weeks for k=10 windows to complete |
| INCONCLUSIVE | C6 third read under v2 (the kit's second computable-read attempt). Verdict: INCONCLUSIVE. Thin-arm clause: elevated arm 8 issuer-days with completed k=10 windows (< 10 floor; completed late/live 8/0), normal 18 (18/0). Arm accrual late/live: elevated 19 (10/9), normal 58 (25/33). Late lags min/med/max 1/3/15. Robustness: elevated completed-k10 = 9 artifact-level / 4 conflict-days-excluded / 8 spec issuer-day-pairs (elevated-wins) — below floor under every counting variant; 9 same-day flag-conflict issuer-days disclosed in the results JSON. Projection: floor reached once 2 pending elevated windows complete — both are 1 trading session short; next read viable ~2026-08-14 after tonight's price accrual. Results JSON output/oie/c6_third_read.json (box-local). |
Sequential evidence — enrolled instruments (label-tier), read from the canonical Anytime Evidence Record and the observation chain at build time; thresholds 5/20:
| enrollment | instrument | obs | state | maturity condition |
|---|---|---|---|---|
| 06721f08a792 | E1: BULLISH-tier pooled (BULLISH + STRONG_BULLISH) 20d directional consistency | 0 | ACCUMULATING | 30 matured post-start observations AND 60 calendar days elapsed since start_time |
| 84187c7ea6e7 | E2: RISK_ALERT 20d adverse-move rate | 0 | ACCUMULATING | 30 matured post-start observations AND 60 calendar days elapsed since start_time |
| bca373c95f68 | E3: WATCH 20d downward-resolution rate | 0 | ACCUMULATING | 30 matured post-start observations AND 60 calendar days elapsed since start_time |
Discovery ledger: 37 hypotheses across 33 families; status counts {"ACCRUING": 18, "INCONCLUSIVE": 1, "OPEN": 7, "REGISTERED": 7, "SUPERSEDED": 4}; family adjudication PENDING until each family's first registered read.
Truncation & error budget ledger (13 entries; counts shown verbatim, including PENDING):
| site | count | reason |
|---|---|---|
| cascade_decay | PENDING | cascade impact decays 0.20 at depth-1, 0.04 at depth-2, dropped at depth-3+ (CASCADE_D1_DECAY/CASCADE_D2_DECAY) |
| snapshot_per_name_cap | 5 of 79 names at the 100-object cap (counted over committed docs/why/*.json, 2026-08-07) | bundled evidence snapshot caps each name at 100 evidence objects (PER_NAME_CAP, mirrors render_why_json limit) |
| u350_drain_cap | PENDING | U350 shadow drain processes at most DRAIN_CAP=12 filings per run and only when U79 queues are empty (shadow starves first, by design) |
| c7_structurally_inactive | structural: all issuer-days while inactive (whole component) | C7 peer-correlation component is STRUCTURALLY_INACTIVE (needs 20d sector-cohort return correlations not yet in production inputs) |
| open_window_closure | PENDING | forward windows enter matured panels only at closure; open windows are excluded from matured statistics, never padded |
| corporate_action_exclusions | 0 policy invocations on record (internal/policy_invocations/ empty, 2026-08-07) | universe membership changes must invoke the corporate-action policy; affected spans are excluded, never silently spliced |
| evidence_tier_boundary | 53 evidence-tier names vs 79 scoring names (counted from the committed tier registry, 2026-08-07) | evidence-tier names are never scored: positive gating plus a standing negative check |
| llm_failure_families | PENDING | extraction failures drop filings from the event stream by family: parse failure, refusal, timeout/retry exhaustion (MAX_RETRIES) |
| delisting_staleness | 0 stale of 79 (universe-gate run of 2026-08-07: 79/79 fresh within 5 trading days) | scoring-universe names with stale latest prices are flagged by the U2 delisting watch and excluded from fresh panels until resolved |
| macro_series_allowlist | 11 | No.5 ingestion refuses any (source, series_id) outside the enumerated 11-series set ALL_SERIES (6 FRED + 3 EIA + 2 yfinance); licensed LSEG/Bloomberg factor sets excluded per the No.5 packet |
| macro_backfill_window | PENDING | bounded backfill: observations before BACKFILL_START (2016-01-01) are never stored; window enforced client-side for every source because the EIA v2 seriesid route ignores start/end and returns full history |
| macro_missing_value_skip | PENDING | source-native absent observations are skipped, never stored as zeros: FRED value '.', EIA null value, yfinance NaN close |
| macro_fetch_error_branch | 0 | a per-series fetch failure skips that series for the run (printed to stderr, nonzero exit; next --accrue or --resume self-heals) rather than aborting the whole ingestion |
Name-scoped registered lineage (including superseded lines):
| hypothesis | family | status |
|---|---|---|
| no name-scoped registered reads at the build anchor — absence is information, not an error | ||
Rebuild this exact card from the registered artifacts:
python3 tools/yuclaw_science_trust_cards.py --write
Verify all three staged surfaces agree and reproduce byte-for-byte:
python3 tools/check_science_trust.py
renderer 1.0.0 · anchor ac51ddfe97eb709a368f15f2aa6af9ab759ea4d319f48f45eeb121736d82d0c3 · same artifacts + same renderer version ⇒ byte-identical output