step2-3-implementation-results.md
0 → 100644
+221
−0
Loading
Documents the as-built deltas from plan/archiver-query-tool.md:
- The one bug found in implementation: Python datetime binds as Oracle DATE
(second precision) by default in oracledb thin mode. Without explicit
setinputsizes(DB_TYPE_TIMESTAMP), the carry-forward result is silently
truncated and BETWEEN pulls in extra rows from the same wall-clock second.
- CSS CSV format value-propagation rules — why the database has 121 rows
for DANGLE.RBV but the operator CSV has 127 (the 6 extras are propagated
from other PVs' events in the multi-PV export).
- Float precision: CSS uses num_metadata.prec for fixed-precision rendering,
trailing zeros kept, not stripped. f"{v:.{prec}f}" matches byte-for-byte.
- status_id=39 from the Step 1 live test was LINK_ALARM — EPICS standard
"input link broken" alarm seen on first samples after Disconnected.
- The full T6/T7/T8/T10 verification gates from the plan all pass.
Tool is committed to main as setup/archiver-query and setup/archiver-query.sh.
This branch's role for the development is now complete; the per-tasking-branch
knowledge capture (Step 6 of the plan) follows in the next commits to other
tasking branches.
Co-Authored-By:
Claude Opus 4.6 (1M context) <noreply@anthropic.com>