Repository navigation
Repo tidy-up from 2026-09-28 feedback (part 8/9) - #22
Open
s28ale-maker wants to merge 14 commits into
Open
s28ale-maker wants to merge 14 commits into
s28ale-maker wants to merge 14 commits into
Conversation
Per Dr. Osumi-Sutherland's feedback, reports/ now holds current outputs only. - Archive the Sept 2026 resolver experiments (evaluation-alias/-legacy, resolver-refinement, regression-triage, regression-followup, baseline JSON, enhanced batch TSV) under archive/2026-09_resolver_experiments/, with a README summarizing what they showed. Keep only README/.md/.tsv summaries; the large JSON/HTML (~24 MB) is recoverable from 4dfc726 and f1e0772, as the archive README documents. - Drop 4 byte-identical legacy .md/.tsv copies (SHA-256 checked) and point their links at evaluation-legacy/. - Move planning docs to docs/planning/ and reports/literature/ to literature/. - Add reports/README.md (one row per file: producer, curated vs generated). - Add the Notes.md sheet link to README and its quick reference to MARKER_SYNTAX.md (Notes.md itself not yet removed). - Update paths in CLAUDE.md, README, ROADMAP, skills, curated TSVs (path prefix only), the CD8 review_ref, and let the audit dashboard link literature/ and archive/ paths. - Add tests/test_doc_links.py: all relative links in hand-written docs resolve. No mapping decisions, CL IDs, quotes or citations changed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Notes.md removed (content was merged into README and MARKER_SYNTAX.md in 2dce48c); drop its CLAUDE.md layout row, which the link check caught. - reports/README.md now links every file by name (matcher_evaluation and marker_resolution_audit .tsv/.json were only shorthand). - Test that reports/README.md lists every file in reports/. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… (Phase 2) Addresses Dr. Osumi-Sutherland's "Docs" to-do from the 2026-09-28 meeting. - README rewritten to 172 lines: aims, Mermaid pipeline, key files (naming the token->PRO registry and the resolution policy/audit), mapping machinery (deterministic CLIs vs agent skills vs human review vs reproducibility), all 7 skills, outputs, quick start, layout. - Detailed README sections moved verbatim into docs/setup.md, docs/pipeline.md, docs/marker_resolution.md and docs/matching_and_evaluation.md (links rebased). - New folder READMEs: docs/, archive/, literature/, marker_mappings/, src/. marker_mappings/README.md explains how marker_protein_gene.csv, marker_resolution.tsv and marker_resolution_audit.md relate, and what registry_sha256 is, with a command that recomputes it. - CLAUDE.md: "Where things go" placement rules and an updated layout table. No mapping decisions, CL IDs, quotes or citations changed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
….tsv The skill still told agents to append entries to reports/candidate_cl_mappings.md, which is now generated by soulcap-sssom from mappings/curated_mappings.tsv. Step 4 now adds/edits a registry row (with column guidance: permanent subject_id, review_status always needs_review, no invented citations) and runs soulcap-sssom, and says never to edit the generated report. CLAUDE.md's Skills entry updated to match. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…PRO (Phase 4) For Dr. Osumi-Sutherland's "unique list of CL matches with PRO mappings for all markers". New resolved_types.py / soulcap-resolved writes reports/fully_resolved_cell_types.tsv, fully_resolved_cl_terms.tsv and fully_resolved_summary.md. - Strict: every token in all four marker columns is single_protein/allow; lenient: the two Required columns only. live/ is never counted; syntax errors block resolution. - Profiles with an empty Required phenotypic column are excluded: 30 rows are defined only by their parent gate, and their generic exclusion panel alone would otherwise count as "resolved". - Marker evidence uses the same policies (--marker-map mode). Descriptive only: no confidence label, no decision changes. Current result: 0 strict, 0 lenient. CD3 (withheld) blocks 71 cell types and is the only blocker for 16; syntax errors are the only blocker for 20. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…SOULCAP feedback draft (Phase 3) - marker_resolution.tsv gains failure_category, specific_rationale, evidence_level and next_action for all 22 withheld tokens, with PRO/GO/ CHEBI IDs checked in OLS4 and CL usage counted from asserted axioms. The original policy columns and fingerprints are unchanged; no token's allow/withhold status changed. The loader validates the new enums. - resolution_audit.py adds a "Why each withheld marker is withheld" table. Regenerating the audit also picks up the Sept 18 whole-CD8 surface rule, which the committed Sept 11 report predated (CD8: 318 -> 39 axiom rows). - docs/marker_resolution.md: "Decisions for David" on CD3 and CD8 (options, exclusion vs inclusion gates, OMIP-069 clones quoted verbatim), other withheld tokens, and the open parent-gate inheritance question. - Findings: 8 withheld tokens are fragments of spaced names (TCR V delta 1+, MR1 Tetramer+); PR:000025402 is CD8alpha-beta only; PR:000001483 (CD16) is defined by the mouse Fcgr3 gene; PRO/CL treat CD15 as the FUT4 enzyme. - reports/soulcap_feedback.tsv (draft, not sent): 28 cells in 24 rows with syntax problems (23 with a validated suggested fix) and 30 rows with an empty Required phenotypic column. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e, CL candidates Additions requested before Phase 6. - Clone targets verified and quoted exactly: SK7 = CD3 epsilon and SK1 = CD8 alpha (Fisher listings for BD 557832 / 340584), 3G8 = CD16a and CD16b (PMC12606087; Fleit 1982, PMID 6808506), L243 = HLA-DR not DQ/DP (BD 335796; chain specificity not verified). CD16 brief: the shared (CD15-|CD66b-) CD16- exclusion panel mirrors SOULCAP's CD16hi neutrophil row and neutrophils carry CD16b, so "CD16a only" is likely wrong there. - Hypothetical (scratch only): CD3e + CD8a + GO TCR/Ig complexes would give 63 lenient fully resolved cell types; the code change needed (cl_pro.py SPARQL, marker_resolution.load ID/representation rules) is described, not made. - CLAUDE.md: never write identifiers from memory; use uv sync --extra dev. - MARKER_SYNTAX.md and soulcap_feedback.tsv: marker names must not contain spaces (general rule). - cl_term_issues.md: CD16 (mouse-defined PR:000001483) and CD15 (FUT4) as candidates for David; not filed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ication (Phase 6) - New literature_evidence.py / soulcap-evidence (migrate, verify, views). - literature/evidence.tsv: 255 rows (188 distinct quotes, 52 markers, 35 papers), one per (cell type family, marker, quote); a quote naming several markers gets one row per marker. Quotes copied exactly (a test checks every row against its narrative source line). 15 quotes that could not be placed mechanically are logged in evidence_unplaced.tsv, not guessed. - verify: 161 quotes match Europe PMC full text exactly (whitespace and Markdown emphasis only), 48 do not (near-match or divergence point noted; never reworded), 46 have no open-access full text. Quotes from the WebFetch files (ilc, t_cell) start as unverified and are never "not_checked". - Generated views in literature/by_cell_type/ and by_marker/; reviews/ index for review papers; cell_type_reviews template now cites evidence IDs. - subject_id is left blank: Parent chains in the Sheet dangle, so cell-type assignment below family level is left to a curator. - Narrative *_markers.md files stay in place until archiving is approved (skills and pro_marker_species_support.tsv cite them by path). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… archive narratives Decisions from the Checkpoint 6 review: - evidence.tsv gains candidate_subject_ids / candidate_status (unreviewed): SOULCAP cell types in the row's family whose definition uses the marker, by a documented mechanical rule (Parent-chain roots, FAMILY_ROOTS). subject_id stays blank. by_cell_type views list them as "candidate". - source_type filled for all 255 rows: "review" where PubMed tags the paper Review (basis recorded), otherwise a proposed type with source_type_basis = proposed, for review. - New verified status exact_except_trailing_punctuation (6 rows), kept apart from paraphrases. verify retries Europe PMC requests and no longer overwrites an earlier check result after a failed fetch. - The 7 narrative *_markers.md files move to archive/2026-09_literature_narratives/; the 58 source_ref paths in pro_marker_species_support.tsv (path prefix only), gaps.tsv, evidence source_file paths, doc links and 4 skills (now reading evidence.tsv, preferring verified rows) are updated in the same commit. - docs/marker_resolution.md: 63 described as an upper bound; eosinophil CD16 side note removed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
One-page summary: repo tidy, CD3/CD8/CD16/HLA-DR decisions with unlock numbers (16 / 28 / up to 63), proposed "confident" definition, SOULCAP feedback draft, parent-gate question, CL/PRO issue candidates, literature evidence numbers. Phases 5, 7 and 8 on hold until after the meeting. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…anel_or_method type Alex's decisions on the WebFetch-extracted quotes: - 7 approved exact replacements added as new rows EV00256-EV00262 (copied from Europe PMC full text, all verified = yes); old rows EV00128, 129, 131, 233, 234, 237, 255 kept unchanged with superseded_by. Views skip superseded rows. - EV00253/254 removed: the extraction appended "CD27, CD28, CD45RA, CCR7" to a real sentence. Logged with reason and full original row in literature/removed_evidence.tsv. - EV00127 and EV00144 replacements rejected; old rows stay unverified. - EV00251/252: verification_note records that the paper uses both CD45RO+ (Methods) and CD45RA- (Figure 4 legend, Results) for Tcm/Tem; the quote splices them. Replacement pending review. - New source_type panel_or_method: Lal 2018 (OMIP-046), Finak 2016. None of the "other" papers are OMIP/panel papers. - Th9 citation corrected via PubMed (PMID 32508847: Chen T et al. 2020). - literature/README documents the " … " fragment convention, supersession and the removal log. Agenda literature numbers updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…enda numbers - EV00251/252 removed (WebFetch spliced the CD45RA- and CD45RO+ definitions into one sentence not in the paper) and logged in removed_evidence.tsv. New exact rows from Gholizadeh 2026: EV00263 (Figure 4 legend, CD45RA) and EV00264 (Methods, CCR7), each noting the Results sentence that links the two definitions. - The 15 remaining "other" papers classified as application_study (source_type_basis = curator); category documented in literature/README. - Agenda: literature numbers updated (253 active rows, 170 exact) and evidence by source type added, noting thin review coverage. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
EV00265: the Figure 4 legend sentence (already EV00263 for CD45RA) also names CCR7, so it gets its own CCR7 row, per the one-row-per-named-marker rule. CD45RO is not a SOULCAP marker and is left out. Agenda counts updated (254 active rows, 171 exact). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Commits
2dce48c..77ae834: the tidy-up you asked for in your 2026-09-28 feedback. The items to discuss are collected in the agenda for the 12 Oct 2026 meeting (docs/planning/2026-10-12_meeting_summary.md)..md/.tsv/READMEs) move toarchive/2026-09_resolver_experiments/, and their large generated JSON outputs (matcher_evaluation.json,regression_triage.json,audit_data.json, …) are removed. That accounts for nearly all of the ~735k deleted lines. The archive README gives thegit showcommand to recover each removed file. Also removesNotes.mdand lists everyreports/file.docs/pages, folder READMEs, and file-placement rules. Thesoulcap-cl-matchingskill now records decisions inmappings/curated_mappings.tsv.soulcap-resolvedlists cell types whose markers all resolve to PRO.Test plan
Checked in isolation with the same steps as CI (
uv sync --frozen --extra dev):uv run pytest: 598 passed, 96.5% coverageuv run ruff check .,ruff format --check ., anduv run mypy src/soulcap_cl_mappingpass🤖 Generated with Claude Code