C1 Diagnostics
- Area
- C — Trust & correctness
- Audience
- operator
- Kind
- feature
- Status
- accepted
- Maturity
- built
- Labels
- verification
The feature in the specification · Read at
Requirements
Every check MUST establish its finding empirically, not infer it from configuration.
- locked by
- 0.8.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@ee934aee0dlemonfiber@6b56f17f0b
Every non-passing result MUST carry a remedy stating what to do.
- locked by
- 0.8.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@7229d1adac
unverified MUST be distinct from pass, and a check that could not run MUST NOT report as passing.
- locked by
- 0.1.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@90bc931905lemonfiber@4ccc9f6bf1
Checks MUST be independent; one failing MUST NOT prevent others running.
- locked by
- 0.1.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@4ccc9f6bf1
Checks that disturb the running system MUST be opt-in and MUST state what they disturb and for how long.
The suite, a category, or a single check MUST be individually runnable.
Every check MUST have a bounded timeout and MUST report unverified on expiry.
- locked by
- 0.1.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@4ccc9f6bf1
An error inside a check MUST be reported as a check error, never as a finding about the stack.
- locked by
- 0.1.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@4ccc9f6bf1
Diagnostics MUST emit machine-readable output alongside human-readable output.
- locked by
- 0.1.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@4ccc9f6bf1
Findings sharing a root cause MUST indicate that relationship.
- locked by
- 0.8.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@c69db7090blemonfiber@3fbfe07fe3
Checks whose prerequisites are absent MUST report skipped with a reason, not fail.
- locked by
- 0.8.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@90bc931905lemonfiber@7229d1adac
A full non-disruptive run SHOULD complete within 30 seconds.
- locked by
- 0.8.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor.rs
- cited by
- lemonfiber@b80b5548a7
Setup MUST use the same checks as diagnostics, not a parallel implementation.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/environment.rscrates/lemonfiber/src/setup.rscrates/lemonfiber/src/setup/boot.rscrates/lemonfiber-core/src/wizard.rscrates/lemonfiber-core/src/journal.rscrates/lemonfiber-core/src/app/apply.rs
- cited by
- lemonfiber@122972daeblemonfiber@01ce82d8f3lemonfiber@7229d1adac
Filesystem check timeouts MUST accommodate network and external storage.
A proof an installed plugin declares MUST run as a check like any other, a run proof on the cadence ARCH-R287 sets, — under a bounded timeout, reporting the same verdicts — MUST be attributed to the plugin, and an error inside it MUST be reported as that plugin's check error rather than as a finding about the stack.
- locked by
- 0.18.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/proved.rscrates/lemonfiber-core/src/doctor/requested.rscrates/lemonfiber-core/src/doctor/asking.rscrates/lemonfiber-core/src/doctor/contributed.rscrates/lemonfiber-core/src/app/engine/diagnosis.rscrates/lemonfiber-core/src/plugin/installed/proved.rscrates/lemonfiber-core/src/doctor/requested/tests.rs::a_request_proof_that_holds_passes_as_the_plugins_checkcrates/lemonfiber-core/src/doctor/requested/tests.rs::a_request_proof_that_does_not_hold_fails_naming_the_plugin_and_each_faultcrates/lemonfiber-core/src/doctor/requested/tests.rs::a_service_nobody_can_reach_leaves_the_proof_unverified_and_the_pluginscrates/lemonfiber-core/src/doctor/proved/tests.rs::a_run_proofs_check_is_the_plugins_and_bounded_by_its_own_limit
- recorded partial
- lemonfiber-companionapp-modules/kernel/src/Api/Finding.phpapp-modules/sdk/src/Api/Reports.phpapp-modules/sdk/tests/Api/ReportsTest.phptests/Feature/SeeingWhoPutACheckThereTest.php
- cited by
- lemonfiber@cc1b83cf00lemonfiber-web@77c956d903lemonfiber-companion@f610d53258
A finding about a service MUST carry, beside the service's identifier, the name the stack gives that service in front of an operator, and the title lemonfiber writes for a finding MUST name a service by that name, never by its identifier.
- locked by
- 0.18.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/examining.rscrates/lemonfiber-core/src/doctor/vpn/pair.rscrates/lemonfiber-core/src/bundle/run.rs
- cited by
- lemonfiber@c1ccda0afcsdk-ts@9e6088edeelemonfiber-companion@408939a224lemonfiber-companion@ca4d83973alemonfiber-companion@2089952d94
A check reported wrong MUST carry its onset, the time the stack first saw it wrong since it last saw it right; the onset MUST survive a restart of lemonfiber and MUST be the same on every surface that reports the check, and a check that comes right and goes wrong again MUST carry the later time.
- locked by
- 0.18.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/app/conditions.rs
- cited by
- lemonfiber@493287299clemonfiber-web@0b9b5932d0
The doctor MUST ask the filler of media.serve, over that capability's contract alone, how many seasons and episodes each series holds, and MUST report each series holding episodes and no seasons as a warning of its own that names the series; where nothing fills media.serve it MUST report skipped, where the filler cannot be asked it MUST report unverified, and nothing a member is shown MUST name the finding.