Representing senescent cells in DisMech
Local research and design exploration for Chris Mungall, 2026-09-20.
Repository baseline: 1cc412fddde5aacb0cc66311a96e25d67465fdb9.
The initial exploration was followed by Chris's explicit request to update the
existing senescence module locally. The bounded curation described below is now
applied to that module; the production schema is unchanged. Chris subsequently
requested a pull request containing the curation and its supporting design record.
Recommendation
Use CL identity plus a contextual senescence mechanism with the existing
schema now. Keep the senescent population, its secretory activity, immune
recognition or escape, clearance, and accumulated burden as distinguishable
claims. Put marker observations in biochemical.readouts or model-specific
ExperimentalReadout objects; a marker is evidence about a state, not the state
itself. Specialize the existing modules in disease entries rather than creating
a disease called “senescent cell.”
Following Chris's design feedback, reuse biological processes rather than
introducing a separate cell-state vocabulary. This also accommodates normal
processes and cell-cycle phases. A future relation qualifier can distinguish
participation or causal involvement from temporal context. The cell_states
prototype below is retained as an investigated alternative, not the selected
direction. Reusing BP does not by itself solve which participant the process
applies to on a mixed-cell node; that remains a relation/scoping requirement.
The decisive question is not whether “senescent cell” sounds like a cell type. It is whether the representation preserves which cell population has which state, in which setting, supported by which observation. The current schema can communicate that to readers; its automated queries and exports preserve less of it.
Paper identity and reading record
The supplied PDF identifies itself on page 1 as:
- Title: Escape and evasion: when immunosurveillance of senescent cells goes wrong
- Authors: Elina Shakur; Abraham Jacobs; Rituparna Ghosh; Matthew J. Yousefzadeh.
- Publication: Frontiers in Genetics, volume 17, article 1882818; Mini Review; published 7 July 2026.
- DOI: 10.3389/fgene.2026.1882818.
- Independent identity check: PubMed PMID:42518598 agrees with the PDF; PMCID: PMC13384439. Identity was read from the PDF before looking up these database identifiers.
Source file: the supplied doc_ac0569aee4af_fgene-17-1882818.pdf, retained outside
the repository.
SHA-256: 4eec4659227597d37717344de0e6fe527861f78f33cb9834e4f279dd38a53701.
All nine pages were read, including the references and declarations on pages
7–9. Figures 1 and 2 were inspected as rendered images, not just extracted
captions. Page citations below use the printed PDF pages 01–09, which match
the PDF page indices counted from one. Extracted full text and page images were
kept in /tmp/dismech-senescence-investigation/, outside the repository.
This is a narrative mini review, not a new experimental dataset or a validated senescence classifier. “The review reports” below identifies its claims; the representation choices and cautions are this investigation's interpretation.
What the paper contributes to the representation
| Paper claim or distinction | Exact location in supplied PDF | Modeling implication |
|---|---|---|
| Senescent cells remain metabolically active despite impaired proliferation; they can contribute to development, wound healing, and tumor suppression. | p. 1, Abstract and Introduction; p. 6, Conclusion | Cell-cycle behavior, cell identity, and functional consequence are distinct. Senescence is not necessarily deleterious. |
| Durability depends on cell type and stimulus. The review discusses escape from oncogene-induced senescence and contrasts it with more durable replicative arrest. | p. 2, “Senescent cells and their role in inflammaging,” first paragraph | Preserve inducing mechanism and observation context; do not make irreversibility an unconditional property of every record labeled senescent. |
| No universal marker exists. Features include p16INK4a/p21CIP1, DNA-damage signaling, nuclear/chromatin changes, morphology, and SA-beta-gal activity at pH 6.0. | p. 2, same section and Figure 1; figure includes reduced lamin B1, TAFs, SAHF, DNA-SCARS, CCFs, LINE-1 and mitochondrial DNA release | Record assay observations separately. A feature panel is supportive evidence, not an exhaustive definition or a conjunction all cells must satisfy. |
| SASP composition varies with cell type and trigger and includes more than cytokines: chemokines, proteases, growth factors, vesicles, lipids and nucleic acids. | pp. 2–3, same section | SASP is a secretory program; any one mediator or generic cytokine GO term is only a partial description. |
| Secreted factors recruit immune cells, reinforce senescence locally, and induce paracrine senescence. Persistent inflammation and senescence can reinforce one another. | p. 3, same section | Distinguish source and responding populations. Give feedback edges their own evidence; do not collapse recruitment, cytotoxicity and clearance into one event. |
| In acute cutaneous wounds, senescent fibroblast PDGF-AA promotes differentiation of non-senescent fibroblasts into myofibroblasts. | p. 3, “Immune-mediated clearance of senescent cells” | A responding fibroblast does not inherit the source cell's senescent state. A repair response is not automatically pathological fibrosis. |
| NK cells, macrophages, T cells and other immune populations contribute different recognition, recruitment and clearance functions. | pp. 3–5, same section; p. 4, Figure 2 | Record effector identity separately from senescent target identity. NKG2D ligand recognition, granule killing and phagocytosis are different mechanisms. |
| Target-side evasion includes inhibitory ligands, shedding of activating ligands, suppressive secretions and possible matrix effects. | p. 5, “Mechanisms of immune evasion by senescent cells” | Represent specific evasion mechanisms in the context supported by the source, rather than assigning a universal “immune-evasive” senescent subtype. |
| Immunosenescence includes shifts in immune-cell populations and function; exhausted, senescent and otherwise dysfunctional immune cells are explicitly distinguished. | pp. 5–6, “Immunosenescence impairs immunosurveillance” | Organism-level immune aging is not synonymous with cellular senescence of every immune participant. Neither an inhibited NK cell nor an exhausted T cell is automatically senescent. |
| Immune restoration, checkpoint interventions and engineered immune-cell therapies are discussed, but it remains uncertain whether some benefits reflect restored senescent-cell surveillance or other mechanisms. | p. 6, same section and Conclusion | Separate intervention targets, biomarker changes and clinical outcomes. The review does not establish a general human treatment recommendation. |
“Escape” itself needs two meanings: escape from proliferative arrest (p. 2) and escape from immune elimination while remaining senescent (p. 5). They should have different nodes and descriptions.
The page 5 evasion mechanisms also need different participant roles. Except for the independently checked HLA-E example below, these are review-derived leads for disease-specific primary-source curation, not completed evidence assertions:
| Review mechanism (p. 5, “Mechanisms of immune evasion by senescent cells”) | Representation to preserve |
|---|---|
| CD47–SIRP-alpha inhibition of phagocytosis | CD47-bearing target and SIRP-alpha-bearing phagocyte; neither receptor alone establishes senescence. |
| HLA-E–NKG2A inhibition | Senescent fibroblast target and NK/CD8 effector are different populations. |
| Shedding of activating NKG2D ligands | Distinguish reduced surface ligand availability from soluble ligand abundance and subsequent effector dysfunction. |
| PD-L1–PD-1 signaling | Keep target checkpoint expression and effector inhibition separate; the review's PD-1-positive macrophage discussion is another context. |
| GD3-associated immune escape | Preserve the cited mouse lung-fibrosis setting; do not silently generalize it to every human senescent cell. |
| FasL-mediated killing of T/NK cells | Here the immune effector dies; this is different from immune killing of the senescent target. |
| IL-10/TGF-beta and myeloid-derived suppressor-cell recruitment | Separate secretion, recruitment and suppressive function; recruited cells do not inherit the source's state. |
The immune-aging discussion on pages 5–6 adds a separate source of impaired clearance. A larger senescent-cell burden cannot, by itself, distinguish increased state induction, target-side escape, or reduced effector competence.
Source details that should not be copied uncritically
- HLE-A on page 5 is inconsistent with the cited primary source. Pereira et al. identify HLA-E, the ligand for inhibitory NKG2A, in senescent dermal fibroblasts and in their endothelial-cell experiments. Their perturbation evidence is in vitro; human tissue observations support expression/localization, not clinical efficacy of blockade. Read the primary study, Results and Figure 1. Preserve exact source spelling in any quotation and explain the discrepancy; do not reproduce it in a gene or protein binding.
- The review's HLA-E/CD4 sentence needs correction against its citation. Page 5 links cytotoxic CD4 recognition to MHC-II and then HLA-E while citing Hasegawa et al. That study's abstract instead specifies HCMV glycoprotein B and HLA-II-dependent recognition of senescent skin fibroblasts. This is antigen- and tissue-context-specific clearance, not generic HLA-E recognition by CD4 cells. Hasegawa et al., PMID:37001502.
- Figure 2 contains misleading labels. On p. 4, the senolytic arrow is labeled “Induces anti apoptotic pathways,” although the caption describes induction of apoptosis and the review's conclusion discusses targeting anti-apoptotic pathways. Its MHC-I/CD4 and MHC-II/CD8 labels also appear interchanged relative to the conventional pairings and the cited CD4 study. Do not transcribe these labels into causal edges. Figure 1 is useful as a feature inventory, but neither schematic is experimental evidence.
- Other p. 5 claims remain leads. The CD47 citation is an atherosclerosis study, the NKG2D-ligand-shedding citation names multiple myeloma, the GD3 citation is a commentary, and the ECM example concerns senescent mesenchymal stromal/stem cells and breast-cancer behavior. Their bibliography entries (pp. 7–9) do not establish that each mechanism applies to all senescent fibroblasts. Their underlying experiments were not independently assessed here and should be before disease-specific promotion.
- The wound-study evidence has a publication-status caveat. Follow-up checking found an Expression of Concern, PMID:42412492 for Demaria et al.'s 2014 study (PMID:25499914), published online 29 May 2026. The wound fixture now flags this and remains an illustration of how to encode the review's claim, not an established positive-evidence benchmark. The notice metadata was verified; no conclusion about misconduct or the validity of each individual experimental result is inferred from that metadata.
The MICSE guidance, PMID:39121846, cited on p. 8, was also checked. Its recommendations favor at least three markers from different senescence properties, with at least two co-detected in the same sample/time, ideally the same cells, and context-dependent arrest evidence. It gives specific caveats for cancers and non-mammalian systems and stresses uncertainty in human tissues. This is a useful curation checklist, not a deterministic three-positive- markers classifier. A bulk cytokine signal, two markers measured in different cell populations, or reduced proliferation alone should not automatically produce a senescent-cell assertion.
What DisMech represented at the investigation baseline
The full CLAUDE.md, applicable AGENTS.md, and the PDF, extend-schema,
dismech-terms, and dismech-references skills were read. The module follow-up
also used create-module and the modules-and-conformance primer. The relevant design
constraints are decision register §§1–6 and §12:
mechanism-first scope, reuse of ontologies, modules as conformance rather than
inheritance, Biolink at export only, exact evidence quotations, and deferred
decisions about composite measures and context-dependent effects. The
evidence-model explanation further argues
against adding ungrounded confidence grades.
Baseline content and concrete reuse points
| Existing record | Representation observed | Consequence for this design |
|---|---|---|
cellular_senescence |
Five nodes: inducing stress → arrest → SASP / accumulation → tissue dysfunction; p16 and SA-beta-gal readouts; senolytic target; animal, experimental and computational models | Already the main reusable pathological module. Its SASP node binds “Senescent Fibroblast” to CL fibroblast; there is no need to invent a duplicate module for that representation alone. |
senescence_tumor_suppression |
Protective arrest and a distinct loss-of-stemness branch converge on a transformation/progression barrier | Preserve the protective/deleterious distinction. Its notes explicitly reject p16/p21/SA-beta-gal alone as proof of the tumor-suppressive arrest. Loss of stemness is not a senescence marker. |
inflammaging |
SASP is one of several inflammatory inputs; chronic inflammation and propagation are separate nodes | Inflammaging is neither identical to SASP nor proof of a particular senescent cell population. |
Osteoarthritis |
“Chondrocyte Senescence,” CL chondrocyte, articular-cartilage location, GO cellular senescence, conformance to accumulation; downstream matrix catabolism | Existing identity + mechanism + tissue pattern works. Its evidence must retain the distinction between experimental OA and human disease. |
Idiopathic_Pulmonary_Fibrosis |
“AT2 cell senescence and SASP” and “Senescent myofibroblast persistence and apoptosis resistance” distinguish epithelial and mesenchymal populations; organoid and animal models carry limitations | Already richer than a generic senescent-fibroblast summary. Do not overwrite its immune-free organoid result with a claim that immune recruitment is universally required. |
Activated_PI3K-delta_Syndrome |
“Senescent T-cell skewing,” separate CD4/CD8 CL bindings and GO cellular senescence | A real immune-cell-state case. The prose also says “exhausted”; those concepts need independent support rather than automatic equivalence. |
Pilocytic_Astrocytoma |
Neural stem-cell identity, oncogene-induced senescence, and a separately evidenced low-grade progression barrier | A disease-specific protective branch; reduced proliferation and tumor progression are different claims. |
Werner_Syndrome |
Skin-fibroblast identity and GO replicative senescence; a separate adipogenic-failure mechanism | Retain replicative specificity and the limits of patient-cell and model evidence. |
The reproducible inventory is kb-scan.json,
generated by scan_kb.py.
It scans pathophysiology only: case-insensitive senesc in a node name, or a
direct binding to one of GO:0090398, GO:0090399, GO:0090400, GO:0090402 and
GO:0090403. It excludes prose-only mentions elsewhere and inferred ontology
closure. Thus these counts are an operational inventory, not a prevalence estimate
or an exhaustive count of senescence biology in the KB.
| Scope | Files scanned | Matching files / nodes | Nodes with cell types | With multiple cell types | With node-level locations | With conformance |
|---|---|---|---|---|---|---|
| Diseases | 3,044 | 39 / 44 | 30 | 8 | 12 | 15 |
| Modules | 177 | 7 / 10 | 2 | 1 | 0 | 0 |
Only one matching module node and no matching disease node put “senesc” into
a cell's preferred_term. Consequently, searching display labels alone misses
almost all of this material. Nodes without cell_types are not necessarily
defective: some describe a generic stress, burden, or downstream consequence.
Read-only issue searches for senescence and "cell state" also found relevant
prior work. #3675
addresses IPF ordering and feedback;
#8488 nominates
AEC/immune-remodeling mechanisms. These are curation leads, not ratified
cell-state schema decisions. The searches were limited to 30 results each;
no claim is made that every historical discussion was found.
Existing slots and their limits
The authoritative source is dismech.yaml,
especially Descriptor, CellTypeDescriptor, Pathophysiology, Biochemical,
BiomarkerReadout, ExperimentalReadout and EvidenceItem.
- Identity:
CellTypeDescriptor.termis constrained to the CL cell hierarchy. Itspreferred_termanddescriptioncan add a justified state; changing the canonicalterm.labelcannot. - Location:
Pathophysiology.locationsscopes a mechanism. InheritedCellTypeDescriptor.located_incan locate an individual participant, so tissue specificity alone is not a reason for a new class. - State/process:
biological_processescan bind GO senescence.modifierexpresses a direction or qualitative activity, not a senescent-state tag.biological_scale: CELLULARidentifies scale, not state. - Mechanism context: descriptions, notes, triggers and model descriptions
can capture stressor, species, culture/in-vivo setting and time. Disease
subtypescan scope relevant mechanisms, but cellular senescence is not itself a disease subtype. Clinical onset/temporality are not a general experimental time-since-induction schema. - Observations:
Biochemicalsupportscell_types,context,assays,specificityand observationalreadouts. Model-specific measurements belong onmodeled_mechanisms[].readouts, retaining model context and limitations. Do not invent numerical specificity or a comparator the source does not give. - Evidence: nodes, edges and readout links can have separate evidence.
CellTypeDescriptoritself currently has no evidence slot or state slot. - Causal wiring:
downstream.targetuses bare node names. It has no general signed-effect slot; express inhibition with a node such as “Reduced NK cytotoxicity,” not an invented inhibitoryCausalEdgeproperty. Treatment links have their owntreatment_effectsemantics.
Two independent lists on a node do not pair their elements: a node listing fibroblast and NK cell alongside cellular senescence does not formally say which cell is senescent. Splitting nodes and explaining participant roles reduces this ambiguity, but does not make each cell an independently referenceable population.
This matters in export. kgx_export.py
emits disease→CL has_participant and disease→GO associations separately. CL
identity is used as the exported node ID, and a preferred display label can be
used as its name. It does not create a distinct “senescent fibroblast in this
tissue” entity or preserve the cell-state/process pairing. Nested located_in
is also not the same export route as Pathophysiology.locations.
graph.py retains cell labels as mechanism metadata,
rather than giving these populations their own graph identities. A schema
extension would need explicit renderer/export work to improve this.
Ontology lookup results
Live OLS queries were made on 2026-09-20, using the services selected by
conf/oak_config.yaml. The returned CL version was
2026-06-08, GO 2026-07-26, and NCIT 26.02d. Retrieval date is not the
ontology release date. The selected-term lookup records, parent and ancestor
results, URLs and service metadata are in
ontology-terms.json.
| Identifier | Verified canonical label | Appropriate use |
|---|---|---|
| CL:0000057 | fibroblast | Generic identity when tissue is not established |
| CL:0002620 | skin fibroblast | Skin/dermal fibroblast examples |
| CL:0000138 | chondrocyte | OA chondrocyte population |
| CL:0002063 | pulmonary alveolar type 2 cell | IPF epithelial population |
| CL:0000623 | natural killer cell | NK effector, or senescent NK population only if separately supported |
| CL:0000624 | CD4-positive, alpha-beta T cell | CD4 population; cytotoxic or senescent qualification needs its own support |
| CL:0000625 | CD8-positive, alpha-beta T cell | CD8 population; exhaustion is not implicit |
| CL:0000235 | macrophage | Phagocytic effector or a separately evidenced senescent macrophage population |
| GO:0090398 | cellular senescence | General process anchor |
| GO:0090399 | replicative senescence | Specifically replication-associated arrest |
| GO:0090400 | stress-induced premature senescence | Stress-induced route when supported |
| GO:0090402 | oncogene-induced cell senescence | Oncogenic route, not every cancer-associated senescence observation |
| GO:0090403 | oxidative stress-induced premature senescence | Oxidative route when established |
| GO:0006974 | DNA damage response | Possible upstream mechanism; not diagnostic of senescence |
| GO:0001816 | cytokine production | One component of a SASP; not equivalent to the whole SASP |
| GO:0019221 | cytokine-mediated signaling pathway | Recipient signaling, distinct from cytokine secretion |
| GO:0042267 | natural killer cell mediated cytotoxicity | Immune effector function |
| GO:0006911 | phagocytosis, engulfment | Engulfment mechanism, distinct from proliferative arrest |
| GO:0006915 | apoptotic process | Target-cell death, distinct from senescence |
| UBERON:0002097 | skin of body | Location used in the fixtures |
| NCIT:C107438 | Beta-Galactosidase | Protein identity; does not encode SA-beta-gal assay conditions |
All 21 returned non-obsolete records. The eight CL terms reached CL:0000000
through the queried ancestors relation; the eleven GO terms reached GO:0008150.
The anatomy term reached the schema's UBERON root. Labels, existence and scope
were checked separately; none of these checks proves a biological claim.
The explicit searches are retained in ontology-searches.json. Examples that can be rerun:
uv run runoak -i ols:cl search 'senescent'
uv run runoak -i ols:go search 'senescence'
OLS label/synonym searches for senescent and senescence in CL returned zero
hits. The analogous query for senescence-associated secretory phenotype
in GO returned zero hits. These are statements about the recorded queries and
loaded releases, not proof that no relevant class could exist under other wording.
CL does contain some state-qualified classes, so the recommendation is not based
on a claim that CL is universally restricted to immutable lineage identities.
Two cautions emerged from inspecting the actual records:
- GO's general definition still says irreversible cell-cycle arrest. The review's conditional escape discussion creates a real conceptual tension. Keep the canonical label and record the caveat; do not rewrite the ontology definition locally. Senescence-like phenotypes or reversible cytostasis with no demonstrated stable arrest should not be forced into this binding. A separately modeled escape transition need not assert that the escaped cell remains in the original state.
- Replicative senescence is not in the queried
is_aclosure of GO:0090398. GO:0090399 instead had GO:0022402 (cell cycle process) as a direct parent. Include it explicitly in a senescence retrieval set. Do not assume the schema's BP-root validation implies the expected finer senescence hierarchy.
GO:0001816 also carries a caution against direct gene-product annotation; DisMech's mechanism annotation is a different use. Neither it nor the generic inflammatory-response term should be presented as an exact SASP ontology match. OBI assay descriptors exist in the schema, but OBI is absent from the configured validator adapters. The fixtures therefore retain assay names without claiming an OBI binding was verified.
Identity, state, burden, mechanism and marker are different assertions
| Assertion | Example | What it does not establish |
|---|---|---|
| Cell identity | Skin fibroblast | Senescence, abundance, or source-study provenance |
| Cell state | A particular fibroblast population is senescent | Every fibroblast in that tissue is senescent |
| State-inducing mechanism | Oncogenic signaling or telomere dysfunction induces arrest | That the two triggers occurred in the same cells |
| State-associated program | A population produces a specified SASP | A universal set of secreted factors or a uniformly harmful effect |
| Immune interaction | HLA-E on the target inhibits an NKG2A-bearing effector | That the effector is senescent |
| Population burden | More senescent cells persist in tissue | An increased rate of senescence induction; impaired clearance can also increase burden |
| Assay observation | Increased SA-beta-gal activity, measured under stated conditions | Sufficient identification of senescence or a validated clinical surrogate |
| Disease consequence | Context-specific matrix damage or repair | Universal effect direction across organs, ages and disease stages |
Conceptually, burden changes with entry into the state, elimination, and possible exit from the state. This is a bookkeeping distinction, not a fitted quantitative model from the review. A clearance intervention can reduce burden without reducing the rate of senescence induction. A senomorphic intervention can alter secretory output without eliminating the cells. Neither change necessarily restores proliferation.
For marker curation, retain at least the cell population, tissue/specimen, assay and measured entity, direction relative to the stated comparator, observation time, and evidence limits when the source provides them. Distinguish CDKN2A transcript from p16INK4a protein and an isoform-specific assay; distinguish GLB1 protein abundance from beta-galactosidase activity at pH 6.0. Cytokines can be both causal mediators and readouts, but those require two different assertions. An absent measurement is not a negative result. Loss of a marker is not automatically senescence reversal, and bulk-tissue expression is not automatically a count of senescent cells.
The current schema has useful homes for much of this detail, but structured sample/time/comparator metadata and multi-marker inference remain incomplete. Do not replace those gaps with invented confidence scores. The decision register already leaves composite measures and experimental measurement context open.
Options and concrete YAML
| Option | Benefit | Cost / limitation | Disposition |
|---|---|---|---|
| A. Existing CL descriptor + GO mechanism + contextual prose and readouts | Works now; preserves ontology identity; uses established evidence and graph machinery | Cell-state attribution partly textual; independent lists do not pair cells to states | Use now |
| B. Treat “senescent cell” as a single precomposed cell class | Convenient one-term lookup if an appropriate upstream class exists | No matching CL result in the recorded search; a broad state class loses lineage/tissue unless combined; no license to insert NCIT or GO into a CL-only slot | Do not substitute for identity; consider upstream ontology work only for a demonstrated need |
C. Optional CellTypeDescriptor.cell_states assertions |
Machine-readable state on the correct participant, with its own evidence; additive | Requires curation rules, display/export support; does not provide cross-node population identity | Investigated alternative; BP reuse selected after design feedback |
| D. Reusable cell-population entities, state transitions and structured marker panels | Could express same-population lineage, interactions, sample-level panels and trajectories | New identifiers, reference resolution, assay semantics, migration and export design; substantial overlap with unsettled evidence/measurement work | Defer pending concrete datasets and queries |
Generic qualifiers are not a recommended fifth solution. They are deprecated
for cases that deserve dedicated slots, their generic terms are not checked by
the ordinary dynamic-enum validator, and a GO process attached through an
ambiguous predicate is not automatically a well-defined cell state.
Option A: current schema
This is the identity/state core of the executable existing-schema.yaml:
pathophysiology:
- name: Senescent skin fibroblast state
biological_scale: CELLULAR
cell_types:
- preferred_term: senescent skin fibroblast
term:
id: CL:0002620
label: skin fibroblast
located_in:
preferred_term: skin of body
term:
id: UBERON:0002097
label: skin of body
biological_processes:
- preferred_term: cellular senescence
term:
id: GO:0090398
label: cellular senescence
The full fixture includes source evidence, a distinct NK-effector node with
decreased GO:0042267, and an SA-beta-gal readout. Its bare-name downstream target
resolves. No modifier: INCREASED is added to the senescence process merely
because the cell has the state: a comparative induction or burden claim would
need additional evidence. The assay is explicitly a methodological illustration,
not a claimed measurement or validated diagnostic endpoint.
The second executable fixture,
wound-context.yaml, uses the
review's p. 3 PDGF-AA example. A senescent source fibroblast promotes differentiation
of a separate responding fibroblast population. Both share CL:0002620; only the
source carries the senescence process. It illustrates why shared CL identity
must not collapse state or role. Its evidence is REVIEW_SYNTHESIS/OTHER;
promotion into production should cite and assess the underlying experiment.
That experiment also has a 2026 Expression of Concern, now flagged in the
fixture and above; exact-quote validation does not resolve that evidence concern.
Both fixtures use category: Module solely to exercise the existing Disease
schema outside kb/. Neither is a proposed new production module, disease,
patient record or clinical guideline.
Option C: investigated alternative, not selected
The proposed delta is
extension-delta.yaml.
It adds optional cell_states only to CellTypeDescriptor; each assertion has
a required state, contextual description, and nonempty evidence list.
The pilot vocabulary contains SENESCENT only. No cell-state ontology CURIE,
GO-state equivalence, diagnostic score, or exhaustive state taxonomy is invented.
An instance would have the following shape (illustrative wound-context fragment):
cell_types:
- preferred_term: skin fibroblast
term:
id: CL:0002620
label: skin fibroblast
cell_states:
- state: SENESCENT
description: Senescent source fibroblasts in the review's acute cutaneous wound example.
evidence:
- reference: PMID:42518598
supports: SUPPORT
quote_role: REVIEW_SYNTHESIS
evidence_source: OTHER
snippet: In acute cutaneous wounds, senescent fibroblasts secrete PDGF-AA
The general process annotation stays on the mechanism node. A future state tag must not replace its causal explanation or markers. The validation script builds a complete candidate from the current-schema fibroblast fixture, moves the state-supporting evidence onto the particular cell assertion, and checks that the production schema rejects the new slot while a temporary extended schema accepts it. The production schema is never changed.
Population guidelines for any pilot:
- Assign the state only when the source interprets that specified population as senescent and its basis has been inspected. Record discordant markers and inference limits. A single marker, an old donor, exhausted function, or a computational score alone is insufficient for automatic assignment.
- Preserve CL identity and participant-specific location. On mixed-population nodes, attach the assertion only to the supported population. An effector's state is independent of its target's state.
- Keep induction, duration, clearance and disease consequences on their relevant mechanisms or observations. Do not infer replicative senescence from age.
- Leave the list absent when unassessed; absence is not a negative assertion. The list permits multiple independently supported states in a future vocabulary, but does not imply exclusivity, a developmental trajectory or co-occurrence of every state in every individual cell.
- Start with hand-reviewed skin-fibroblast, IPF AT2/fibroblast, OA chondrocyte and immune-T-cell examples. Automated extraction can nominate records, but cannot safely backfill state assertions from keyword matches or GO co-occurrence.
Before adoption, test actual consumer queries, wire rendering and exports, validate generated datamodels, and document the vocabulary's semantics. Keep the addition optional and old content valid. The extend-schema skill's approval requirement applies to merging a substantive schema change; it is not a reason to stop this local exploration or to request approval for these sandbox tests.
Follow-up: biological phases and developmental stages
Chris's follow-up favors BP reuse for senescence and normal states, with a future
qualifier distinguishing something driving a process from something happening
during it. There is a close GO precedent: the comments on cell-cycle phase terms
recommend temporal annotation extensions, including happens_during for a
process and exists_during for a cellular-component annotation, instead of
treating a phase as an ordinary direct gene-product annotation target.
See GO cell cycle phase.
DisMech is not a gene-product annotation database, but this distinction between
causal/participatory and temporal relationships is useful here.
Live OLS lookup on 2026-09-20 confirmed non-obsolete GO:0051320 S phase and GO:0000084 mitotic S phase, both in the GO BP ancestry. It also confirmed HsapDv:0000019 Carnegie stage 12, UBERON:0000105 life cycle stage, and GO:0021507 posterior neuropore closure. Queries, definitions, URLs and the retrieved ancestry records are in stage-lookups.json. This supplements rather than replaces the earlier 21-term lookup.
Carnegie stages describe human embryonic developmental context using morphology; they should not be reduced to a fixed number of gestational days. The HDBR criteria associate caudal neuropore closing with stage 12 and a closed caudal neuropore with stage 13. A failure during that normal developmental window and the age at which an abnormality is first observed are different assertions. The affected morphology may itself compromise stage assignment; record how the specimen was staged rather than assigning its stage solely from the failed structure. HDBR staging criteria. The ontology project supplies HsapDv for humans and MmusDv for mice; cross-species stage correspondence needs an explicit basis rather than equating stage numbers. Developmental-stage ontology sources.
Current DisMech support
| Existing construct | What it can express | Gap for Carnegie-stage mechanism context |
|---|---|---|
Disease.stages / Stage |
Named disease stages, evidence, descriptions, nested pathophysiology and substages; used for cancer and clinical progression | Structurally a Carnegie-named record could fit, but this does not provide an ontology-bound temporal qualifier on a particular process and conflates disease staging with organism development. Stage has no ontology-term slot. |
onset: {onset_category: EMBRYONAL} and related HPO categories |
Broad age of clinical onset, with quantitative age fields and notes | Does not identify Carnegie stage or when an initiating mechanism acts. |
FunctionalEffect.affected_developmental_stage |
Free-text stage/window for temporally restricted regulatory effects | Narrow to variant functional effects; used for embryonic limb development in ZRS-Related_Limb_Malformation. Not a general pathophysiology slot. |
AgentLifeCycleStage / LifeCycleStageDescriptor |
Infectious-agent life-cycle stages, described as OPL-bound | Not a ready-made human developmental-context field. |
PhaseTerm |
An enum declaration described as a phase or stage | Currently an unbound declaration with no consuming descriptor/slot; it is not implemented phase support. |
Descriptor temporality |
Acute/chronic/recurrent-style qualifiers | Not an embryological staging system. |
For current curation, keep the stage and its evidence in the relevant mechanism's
description/notes. Use affected_developmental_stage only within its existing
regulatory-effect scope. Do not use clinical onset as a proxy for the causal
window, or insert an HsapDv identifier into a GO-only biological-process binding.
HPO onset placement needs a schema-versus-usage distinction. Pathophysiology
has no direct onset slot. However, BiologicalProcessDescriptor,
CellTypeDescriptor, and the other descriptor subclasses inherit onset from
Descriptor. Therefore pathophysiology[].biological_processes[].onset is
structurally permitted. Phenotypes use phenotype_term.onset and/or
phenotype_contexts[].onset, not a direct Phenotype.onset slot. A scan of
indented onset: keys in disorder/module YAML found 533 annotations in 244
files, all under phenotypes, none under pathophysiology. The schema's
inherited capacity is broader than observed curation practice. The scan and
exact paths are recorded in onset-usage.json.
These HPO categories encode onset; structural permission does not make them
equivalent to a process's developmental window or a Carnegie-stage qualifier.
Small future extension to explore
The useful addition would be typed temporal context, such as a
happens_during qualifier on a biological-process descriptor or a mechanism.
Its range should admit the relevant GO biological phases and developmental-stage
ontology terms. Exact slot placement remains a design choice: descriptor-level
placement scopes one process; node-level placement scopes the whole mechanism.
The following is a proposed shape only, not currently valid production YAML:
# Hypothetical developmental defect; illustrates the intended relation only.
biological_processes:
- preferred_term: posterior neuropore closure
term:
id: GO:0021507
label: posterior neuropore closure
modifier: ABNORMAL
happens_during:
- preferred_term: Carnegie stage 12
term:
id: HsapDv:0000019
label: Carnegie stage 12
This pairs the affected process with its developmental window; it does not say
that Carnegie stage 12 causes the abnormality. For a failed process, this refers
to the window in which that process would normally occur; the record should say
whether the stage is observed in affected material or inferred from normal
development. Evidence for the defect and its timing must support both claims.
Stage ranges, uncertainty, and partial temporal overlap should be addressed before
assuming that every claim fits a single strict happens_during relationship.
Before implementing, define the relation's subject and scope, connect evidence
to timing, and configure the new ontology source. HsapDv is currently absent
from conf/oak_config.yaml; the queried HsapDv term reaches its own
HsapDv:0000000 root, not a demonstrated UBERON-root closure. Therefore, the
existing parasite-stage dynamic enum cannot be assumed to validate it simply
because both ontologies describe life-cycle stages. No schema extension or new
adapter was installed in this follow-up.
Cross-check of the shared findings report
The shared FINDINGS.md was read in full. Much of it independently supports the existing-schema recommendation and repeats the same marker, context and export cautions. The following additions are useful:
- Cell-scoped process participation is a useful candidate. The report
considers
participates_inon a cell descriptor. This directly addresses which participant is involved in which BP and fits the selected ontology-reuse direction. It would be a new slot, not existing syntax. Temporal context and causal influence still require their own relations; participation alone does not establish persistent state or regulation. - Concrete ontology counterexamples improve the rationale. Rechecking OLS
confirmed PATO:0001487
senescentis a broad aging/time quality, while CL:0011025exhausted T celland CL:0020031CD8-positive exhausted alpha-beta T cellare real, non-obsolete classes. Thus there is neither an exact PATO shortcut nor a blanket rule that CL never includes state-qualified classes. Exhaustion still does not establish senescence. Lookup records are in salvage-terms.json. - The IPF measurement example catches a specific error. Schafer et al.'s Results, first paragraph and Figure 1a, associate transcript expression assessed by microarray with severity. Immunohistochemistry separately localizes p16 protein. This was independently rechecked against the existing fetched full-text cache for PMID:28230051. A more specific protein identifier still would not correctly type that transcript observation. Primary study.
- Arts syndrome supplies a useful uncertainty case. Its existing “Neural Stem Cell Senescence-Like State” node retains patient-derived culture context and does not bind GO cellular senescence. It is a useful test that BP reuse does not force a stronger categorical claim from marker-like observations. The repository entry was inspected; this is not a new appraisal of its primary study. Existing entry.
- An executable export check is worth retaining as a method. The shared
report describes a probe of CL identity/display names and lost context in KGX.
Its linked
validation/export-probe.json,02-ipf-compatible.yaml, andVALIDATION.mdreturned 404 when resolved against the shared artifact URL. Consequently their implementation and claimed validation were not imported or endorsed. The equivalent export limitations in this note were independently established by inspecting the local source.
The report's broader textual census and this note's name/GO-node census measure
different things; their counts should not be merged. Its separate cell_states
proposal remains an unselected alternative after the BP-reuse decision.
Checking its Demaria citation exposed the Expression of Concern described above,
which is absent from the shared report. That source-status correction has been
incorporated into our local wound fixture without altering the source quotation.
Follow-up curation identified by the exploration
The highest-value initial work is content refinement using existing slots:
- Add or sharpen evidenced recognition, impaired clearance and target-side evasion nodes where a disease warrants them. The existing senescence module mentions immune clearance but has no dedicated clearance node.
- Revisit the generic module's unconditional arrest→SASP phrasing and its replicative-senescence binding on the generic arrest node. They can imply features or triggers that need not hold for every conformer.
- Make marker scope explicit. The current p16 readout extrapolates an IPF severity association into general module prose; the SA-beta-gal block partly relies on a consensus-purpose sentence. A result about one marker in one disease should not silently become a universal diagnostic/prognostic property.
- Preserve the complementary tumor-suppression module, and model senescence bypass separately from the positive barrier. A wound-repair example need not conform to the pathological accumulation/dysfunction branch.
- For IPF, preserve separate epithelial and fibroblast populations and the existing model limitations. For APDS, adjudicate senescence versus exhaustion rather than renaming one to the other.
The module refinements in the first three bullets are now applied as described
below. Disease-specific follow-ups remain unimplemented. A module's conforms_to
is not inheritance: disease-specific source evidence and cell/tissue context must
still be present. The inventory and scan counts above describe the repository
baseline before this curation.
Applied local module curation
Chris authorized updating the existing
cellular_senescence module after
reviewing the exploration. It now has eight pathophysiology nodes, preserving
the names of all five original nodes and adding this context-specific branch:
Senescence-associated secretory phenotype → HLA-E display by senescent cells → reduced NK-cell cytotoxicity → impaired immune clearance → senescent-cell accumulation.
The HLA-E branch is an experimentally supported example, not a universal
requirement for disease conformers. The broader clearance node also represents
the review's immune-aging route to persistence. CL terms identify the target and
effector populations separately; GO biological processes capture senescence and
reduced cytotoxic/immune-effector activity. No cell_states field or temporal
qualifier was added.
| Captured result | Local representation | Evidence and scope |
|---|---|---|
| Arrest durability depends on cell type and trigger. | Qualified the arrest description; removed replicative senescence as a universal binding. | Review p. 2, “Senescent cells and their role in inflammaging.” GO:0090398 retains its canonical definition; the escape caveat does not redefine it. |
| SASP varies by context and includes more than cytokines; autocrine and paracrine signaling can reinforce or propagate senescence. | Expanded the SASP description and evidenced its edge to accumulation; separated CL fibroblast identity from GO senescence. | Review pp. 2–3, same section. The accumulation edge is marked indirect because the quoted signaling claim does not measure net population burden. |
| Senescent dermal fibroblasts can evade immune responses through HLA-E/NKG2A. | Added separate HLA-E target-cell and reduced NK-cell-cytotoxicity nodes, with an edge to impaired clearance. | Review p. 5 provides the lead; Pereira et al., PMID:31160572 provides primary evidence. Functional evidence is classified IN_VITRO; human skin observations do not establish organism-wide clearance efficacy. |
| Impaired immunosurveillance can increase persistence and burden. | Added a general impaired-clearance node and an evidenced edge to accumulation. Removed increased-process modifiers that conflated senescent-cell burden with entry into senescence. | Review abstract p. 1 and “Immunosenescence impairs immunosurveillance,” pp. 5–6; review synthesis is explicit. |
| Individual markers are insufficient to establish senescence. | Qualified p16 and SA-beta-gal readouts. The p16 severity association remains scoped to human IPF transcript measurements; the protein binding and unsupported general prognostic designation were removed. SA-beta-gal is supportive of a senescence-associated state, with pH/assay context and no stand-alone diagnostic designation or universal burden claim. | Review p. 2 and existing Schafer et al., PMID:28230051, Results/Figure 1. The latter separates transcript profiling from protein staining. |
| Immune-rejuvenation benefits may reflect mechanisms other than senescent-cell clearance. | Added an open knowledge-gap discussion attached to the clearance and accumulation nodes. | Review p. 6, Conclusion. No new treatment recommendation is inferred. |
The newly used GO:0002252, immune effector process was looked up directly in OLS and passed the repository's term validator; its label, definition, non-obsolete status and retrieval URL are recorded in curation-term-lookups.json. It is a broad binding for the immune-effector component of clearance, not a term asserting that every immune response is globally reduced. The other CL, GO and UBERON bindings were verified during the initial exploration and again by the module term validator. Validation generated one GO term-cache row and one dynamic-enum membership row; neither was hand-edited.
The Demaria wound-healing result remains in the research discussion with its expression-of-concern caveat, not newly promoted into this module. Other evasion routes (CD47/SIRP-alpha, ligand shedding, PD-L1/PD-1, GD3, FasL and suppressive secretions) remain explicitly identified for source-specific assessment. The existing treatment, animal and computational model sections were preserved. The experimental skin model's fibroblast binding was refined to CL:0002620; its experimental claims were preserved. This captures the paper's central distinctions without implying that every cited primary study has been independently adjudicated.
Module schema and ontology validation passed, and all 46/46 evidence snippets
verified against cached sources (35/35 in the pre-edit baseline). Duplicate-key,
entity-reference, causal-target and knowledge-gap checks passed. The built graph
has 28 edges and no orphan targets. The repository's citation-title checkers
found no title-only snippets or reference-title mismatches in the changed module;
the history and generated term-cache integrity checks also passed. The detailed
initial results and content hashes are
recorded in curation-validation.json.
The subsequent review corrections and current module validation are recorded in
review-validation.json.
An append-only curation history record
records the authorized change and its validation.
Before PR preparation, the branch was refreshed to f3df177789af41976971b15edbb91d65f0c67cc1.
The module content hash was unchanged by that refresh. Schema, ontology, reference, fixture and
module-content checks were repeated against that base, and the recorded ontology
searches returned the same counts. See PR validation.
The earlier KB inventory remains a snapshot of the original investigation base.
The PR review corrected the HLA-E edge's upstream node to SASP, using the primary
study's explicit cytokine/p38 result (Abstract and Results, Figure 2). The earlier
arrest-to-display edge conflated state identification with the inducing pathway.
The primary study's negative ATM-inhibition result does not exclude every possible
DNA-damage contribution; no such universal exclusion is asserted here. The node
is now named HLA-E Display by Senescent Cells, retaining the specific ligand
while keeping its dermal-fibroblast evidence explicit. Verified hgnc:4962
(HLA-E) and hgnc:6374 (KLRC1, encoding NKG2A) annotate the target and effector
nodes, respectively.
The optional antigen-presentation binding GO:0002428 was looked up but not added: the curated mechanism is inhibitory ligand display, and this pass does not assert an experimentally resolved peptide-processing pathway or senescence-specific antigen. The primary study leaves the latter question open. The broad immune effector-process binding is retained because clearance spans multiple effector arms. The report-specific validation scripts and lookup records remain beside the fixtures they reproduce. Lookup results and the disposition of each review suggestion accompany the final validation record.
Validation and reproducibility
The companion validation script checks structural expressibility, backward compatibility of the two fixtures, and graph target resolution. It deliberately does not equate successful validation with biological correctness. Recorded commands and outputs are in validation-results.json.
- Both complete fixtures validate against the production schema and the temporary extended schema. Their three graph edges have no orphan targets.
- A complete candidate with
cell_statespasses the temporary schema and is rejected by the production schema for the new slot, as expected. - The temporary schema rejects an unsupported
EXHAUSTEDvalue and an empty state-evidence list. The script checks the rejection reasons, not just exit codes. - Both fixtures pass ontology-term validation. The reference validator verifies all four of four snippets against fetched references.
- These are fixture-level checks. No production datamodel was regenerated and no claim is made that existing renderers, exports or reference traversal already support the proposed nested state assertion.
From the repository root, the main checks can be rerun with:
just fetch-reference PMID:42518598 PMID:31160572 PMID:37001502 PMID:39121846
uv run python docs/reports/senescent-cell-representation/validate_design.py
uv run python docs/reports/senescent-cell-representation/scan_kb.py
just validate-terms docs/reports/senescent-cell-representation/existing-schema.yaml
just validate-terms docs/reports/senescent-cell-representation/wound-context.yaml
scripts/run_reference_validator.sh validate data \
docs/reports/senescent-cell-representation/existing-schema.yaml \
docs/reports/senescent-cell-representation/wound-context.yaml \
--schema src/dismech/schema/dismech.yaml --target-class Disease \
--config conf/reference_validator_config.yaml --no-full-text
References were fetched only with just fetch-reference, never written or
edited manually. The generated records are PMID:42518598, PMID:31160572,
PMID:37001502 and PMID:39121846. Hasegawa's publisher PDF fetch returned HTTP 403;
its abstract was available and sufficient for the specific HLA-II correction.
No claim is made to have read that entire primary paper. The review's full
bibliography was read, but its dozens of underlying studies were not all
independently verified.
The supplied PDF remains unchanged. The uploaded PDF and its local text
extraction are excluded from the commit. Chris explicitly authorized including
the four standard, tool-generated reference caches in the PR, including their
public full-article content where available. The quoted evidence can therefore
be checked against the committed caches; fetch-reference above regenerates
these records when needed.
The initial exploration was entirely local, with no commit, push, PR, publication
or external message. In a subsequent, explicitly authorized follow-up, Chris
requested issue #12355
on incorporating PubPeer and publication-status updates, using the Demaria case.
That issue links the existing source-status discussion in #9840 and the published
critique and response surfaced by the PubPeer thread. The later PR request
authorizes publishing the bounded module curation and this supporting record.
The frozen dataset-accession blob was not accessed.
Remaining decisions and uncertainty
- Which queries require explicit participant/process relations or temporal qualifiers beyond the selected BP reuse? Readable mechanism curation already works; extra structure should answer a concrete query.
- Should a future population representation distinguish state of an individual cell from enrichment of a heterogeneous population? The proposed small state assertion deliberately provides no percentage or all-cells quantifier.
- How should escape-capable senescence map to GO's irreversible-arrest definition? An upstream ontology discussion may be appropriate, but no term request was filed and no local semantic override was made.
- Can marker evidence establish colocalization, durable arrest and cell identity in the relevant disease tissue? Many reviews and bulk measurements cannot.
- A lineage that is normally postmitotic presents a special problem: lack of proliferation alone cannot establish new senescence-associated arrest. Such contexts need source-specific criteria rather than reusing a fibroblast classifier.
- The mini review supports investigating immunosurveillance, but it does not settle which evasion mechanisms dominate particular human diseases, nor whether improved immune function acts through senescent-cell clearance.
The selected direction is BP reuse with carefully scoped relations, keeping the separate cell-state vocabulary as an unselected alternative. A future temporal qualifier could cover both GO cell-cycle phases and organism-level developmental stages. A broad new senescent-cell entity model, a universal marker panel, and a general experimental-evidence redesign are not prerequisites for representing the paper's central biology faithfully.