Skip to content

Backlog

Ranked list of work, parked items, and open methodology questions. The v1 cycle plan is ordered — work top-down. The parked queue is not ordered; items graduate to the cycle plan when their predecessor lands or when a parked decision is made.

This page is the session-start reference for "what's next." Pair with the latest handoff in #esg-screening for current cycle state.

Last refreshed: 2026-05-19. Refresh discipline: update at the end of any session that completes or reorders an item.

v1 cycle plan

The goal of v1 is a viable web-based screening product: coverage ~35–45% on the financials pilot, banks no longer scoring identically, watchlist populated with real findings.

1. Commit ADRs 0001–0006 + institution-detail mock

Mechanical CC-on-VM cycle. Eight files from the 2026-05-19 chat session plus ADR-0006 from the ops repo, committed to docs/adr/ on the main repo. Currently the next-up cycle.

References: ADRs 0001, 0002, 0003, 0004, 0005, 0006.

2. Migration 011 — coverage-weighted scoring

Adds raw_v04 and coverage_weighted variants to score_composite and score_pillar. Backfills historical runs. Existing composite becomes an alias of composite_coverage_weighted. Pilot banks move from ~19.2 to ~66.7. This is the change that makes scores semantically meaningful.

Reference: ADR-0001.

3. Read interface — pages 1 and 2

Institution index (/) and institution detail (/institution/:lei). Server-rendered HTML, Express + EJS or Handlebars, no build step. RAG colours per ADR-0004. Rule grouping per ADR-0005. Filtering state in URL query params. Index page layout needs its own design pass — the v4 mock covers detail only.

References: ADR-0002, ADR-0004, ADR-0005, institution-detail mock v4.

4. Migration 012 + /methodology page

Adds type, access_mechanism, status, external_url, priority, feeds_rules to the source table; backfills from ADR-0003's initial source list. Builds the /methodology route with three sections: scoring explainer, source register (live), rule catalogue (live). Nightly job updates source status from scrape_run outcomes.

Reference: ADR-0003.

5. BHRRC scraper + watchlist surface

Business & Human Rights Resource Centre. Per-company HTML scrape, allegation list parsing. Feeds S2, S5, E7, G5 plus watchlist. First scraper that should actually differentiate the four UK banks. Watchlist schema designed during this cycle.

Reference: scraper backlog in ADR-0003 (priority 1).

6. UK MSA + UK GPG scrapers

Modern Slavery Act register and Gender Pay Gap register. Low-effort government registers, both can land in one cycle. Financial and non-financial applicability.

Reference: scraper backlog in ADR-0003 (priorities 3, 4).

7. BankTrack + PAX scrapers

Financials-only. Fossil-fuel financing (BankTrack) and weapons exposure (PAX). Together they should add the differentiation that turns the financials peer table from identical to meaningful.

Reference: scraper backlog in ADR-0003 (priorities 5, 6).

Parked queue

Not ordered. Items graduate to the cycle plan as their predecessor lands or as a parked decision is made.

  • v1.5 client-facing summary surfaces — separate styling pass for the read interface for client-facing exports. Deferred until v1 is in use.
  • SBTI-DASHBOARD → SBTI-VALIDATED rename — tiny migration. Source IDs misleading (source is Excel, not dashboard/CSV).
  • PRB seed expansion — currently 4 UK banks. Fill to ~350 from the canonical UNEP FI list before pilot expands.
  • IFRS-S2-CORP scraper — corporate website / sustainability report scraping. Heavy engineering, own ADR when ready. Replaces the TCFD-shaped gap with disclosure-quality signal.
  • Stage 2 credit + returns dimensions — schema placeholders exist, data sources don't. Stage 2 produces no scores yet.
  • Confidence-weighted scoring layered on coverage-weighted — open methodology question. Coverage-weighted handles the "is this rule wired up" axis; confidence handles "how good is the signal we have." Whether and how to combine them is undecided.
  • Auto-render ADRs into ops site — currently the /decisions/* pages are hand-written summaries. Auto-rendering from the main repo's docs/adr/ would remove the drift risk. Small cycle.
  • Auto-render CLAUDE.md into /reference/claudemd — same pattern. Small cycle.
  • Watchlist schema — to be designed during cycle 5 (BHRRC).
  • Trim project instructions and CLAUDE.md content duplication — /backlog reference added 2026-05-19; broader trim of session-protocol content duplicated across project instructions, .claude/CLAUDE.md and ops site /operating-model still parked.
  • Four data-model open items — raw payload retention, watchlist storage shape, source-vs-signal_source rename, run retention. Partially addressed in /architecture/data-model, not ADR'd. Possible future ADR-0007.
  • Weekly automated refresh — cron exists (Sunday 02:00 UTC, gated by ENABLE_SCHEDULER=1) but not yet enabled and no monitoring around it.

Open methodology questions

Distinct from parked work — these need a decision before they can become work.

  • Coverage-weighted vs confidence-weighted composition. See parked queue.
  • Stage 2 credit and returns data sources. No live candidates yet.
  • Aggregate-rule coverage semantics. G3.1 reads other rules' signals but writes none of its own; coverage = 0 on the aggregate. Defensible but worth revisiting if the pattern recurs.

How this page works

This page is hand-maintained until the auto-render plumbing lands. End-of-session discipline: if a session completes an item, reorders the v1 plan, or moves something into or out of the parked queue, update this page in the same session.

The canonical hierarchy still applies: ADRs > design note > migrations

v0.4 workbook. This page summarises and links; it does not override.