Skip to content

docs: record that plain Train keeps an overridable Run - #60

Merged
Theauxm merged 2 commits into
mainfrom
docs/train-run-overridable
Sep 28, 2026
Merged

Theauxm merged 2 commits into
mainfrom
docs/train-run-overridable

Conversation

@Theauxm

@Theauxm Theauxm commented Sep 28, 2026

Copy link
Copy Markdown
Member

A plain Train subclass can override Run and never reach Junctions(), so the chain DeclaredChain() reads is not the one that runs. That stays: plain Train is the base for Core-only consumers, and published Trax.Effect overrides Run in ServiceTrain against a minimum Core version, so a non-virtual Run would stop every published ServiceTrain loading. ADR 0003 records the decision and the rejected options, the Train and Run XML docs state the consequence, and PlainTrainRunStaysVirtualTests pins the modifier.

A plain Train subclass can override Run and never reach Junctions(), so the
chain DeclaredChain() reads is not the one that runs. That stays: plain Train
is the base for Core-only consumers, and published Trax.Effect overrides Run in
ServiceTrain against a minimum Core version, so a non-virtual Run would stop
every published ServiceTrain loading. ADR 0003 records the decision and the
rejected options, the Train and Run XML docs state the consequence, and
PlainTrainRunStaysVirtualTests pins the modifier.
@codecov

codecov Bot commented Sep 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@Theauxm
Theauxm merged commit ac124c9 into main Sep 28, 2026
3 checks passed
@Theauxm
Theauxm deleted the docs/train-run-overridable branch September 28, 2026 15:19
@github-actions

Copy link
Copy Markdown
Contributor

This PR is included in version 1.7.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant