Story: Clean ores.testing to the component clean standard

Table of Contents

This page documents a story in Sprint 26. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

1. Goal

ores.testing meets the Component Clean Standard: the items marked All pass, each item that does not apply is recorded with its reason, and the one item that cannot pass is recorded as an exception with its proof. Order 33 of 35 in the sprint 26 component clean-up, tier 4 (client or test support).

2. Status

Field Value
State DONE
Parent sprint Sprint 26
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-09-26

3. Acceptance

  • Every checklist item that applies to a component of kind All passes, with its evidence recorded on the task.
  • Every item that does not apply is recorded as not applicable, with the reason.
  • Every generator defect found is fixed at its source, with a regression test.
  • ores.testing is listed in COMPONENTS_UNDER_TEST, or the reason the entry cannot be added is recorded as an exception.

4. Tasks

Task State Start End Description
Bring ores.testing to the clean standard DONE 2026-09-26 2026-09-26 Work ores.testing through the Component Clean Standard in order and record each item.

5. Notes

  • Survey on 2026-09-23: 0 entity, junction or operation models; 23 C++ files outside tests, 0 of them generated (0%); 0 messaging headers, 0 of them hand-written.
  • Test support. Most items apply only as hygiene (G03, H01, H02); record the rest as not applicable.
  • The 2026-09-23 note held, with one addition. The component had no tests, which the Component Architecture Audit calls a finding, so the pass adds a Catch2 suite. The standard had also grown from 42 to 49 items since the story was written, and the task records all 49.

6. Decisions

  • The component keeps its place outside COMPONENTS_UNDER_TEST. The enrolment is not a formality: the dry run empties both generated source lists and makes a database mandatory for the component's own unit suite, so V06 records it as an exception with the proof.
  • The suite covers the surface that needs neither a database nor a fleet. The database-bound classes stay with the consumer suites that already exercise them, and V08 records the five files no test of the component reaches.
  • Two findings leave this pass with a home rather than a fix: the unsanitised log filename, which is sanitize_test_log_filename_from_test_name, and the scanner's cyclomatic complexity of 29, which the complexity measure surfaces for a later refactoring pass.

7. Out of scope

Emacs 29.3 (Org mode 9.6.15)