Story: Clean ores.logging 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.logging meets the Component Clean Standard: the items marked All pass, and each item that does not apply is recorded with its reason. The registry entry does not apply, because ores.logging is not a codegen component. Order 2 of 35 in the sprint 26 component clean-up, tier 1 (foundation infrastructure).

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.logging is listed in COMPONENTS_UNDER_TEST, and check_component_drift.py --all passes.

The original acceptance asked that ores.logging join COMPONENTS_UNDER_TEST. That cannot be met and is superseded, because ores.logging is not a codegen component. V06 on the task records the reason and the proof. The gate entry exists to feed still passes.

4. Tasks

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

5. Notes

  • Survey on 2026-09-23: 0 entity, junction or operation models; 16 C++ files outside tests, 0 of them generated (0%); 0 messaging headers, 0 of them hand-written.
  • Result on 2026-09-26: the component passes every applicable item of the standard. The pass fixed one shared generator defect, regenerated the component's source list, added the missing test suite, corrected the overview and the diagram, and applied the comment rules. Two tooling defects in the diagram capture and three component defects found by the tests are recorded for later work.

6. Decisions

  • ores.logging does not join COMPONENTS_UNDER_TEST. It has no entity, junction or operation model, and it is absent from component_catalogue.org by construction. Enrolling it would generate a stub trio whose template text is "STUB code to be removed", which H02 forbids. The task holds the command and the file list a reviewer can rerun.
  • The shared CMake source-list template was fixed on main while this story ran, by the compute clean pass. That pass replaced the retired Qt comment with one that says what the header list is for. This story rebased onto it, kept main's wording, and contributed the regression test that pins the rendered output against the Qt-era line.
  • The test suite is written inside this pass, because the Component Architecture Audit treats a component with translation units and no tests as a finding.

7. Out of scope

  • The diagram capture parser. The architecture audit classifies a tooling change as a record-only finding, and a parser fix rewrites every component's diagram at once.
  • The validator's split error contract, the unreachable fatal level, and the read_options coupling to its own option description. Each is a behaviour or design change, so each waits for a feature task.

Emacs 29.3 (Org mode 9.6.15)