Lint-Driven QC: Redundancy, State Machines, and Coverage Gaps Closed

System

Industrial Elevator Control System, QC pass targeting two quality gate blockers: sessions 9 < 10 and unassignedDoc 3 > 0. All 6 subsystems in the spec tree were previously marked complete (sessions 436–444). This session addresses lint gap residuals that accumulated across those decomposition sessions — specifically the absence of redundancy/failover requirements for system-essential subsystems, missing state machine requirements for state-transforming components, and SYS-to-SUB coverage gaps. Project now stands at 160 requirements, 175 trace links, 12 baselines.

Findings

Fifteen requirements showed as homeless in --homeless output, but cross-checking all 6 document sections confirmed all 148 prior requirements were already in sections. The --homeless flag reflects a list-API discrepancy (document field not populated in the flat list endpoint). Confirmed correct: total requirements in docs = 148, matching the project count.

Lint analysis (67 medium findings pre-session) identified four actionable categories:

  1. Redundancy/failover missingsafety controller subsystem {{hex:51B73858}} (SIL-3, {{trait:System-Essential}}) and group dispatch controller {{hex:41F77B08}} ({{trait:System-Essential}}) had no failover requirements despite their ontological classification as safety-critical and system-essential respectively. An uncontrolled failure of either could defeat all car safety functions or all group dispatch service simultaneously.

  2. State machine missingvariable frequency drive {{hex:D4F53018}} and door operator subsystem {{hex:55F77858}} are both {{trait:State-Transforming}} but had no state machine or mode transition requirements. Undefined drive transitions are documented causes of elevator runaway incidents.

  3. SYS coverage gaps — SYS-REQ-015 (IP54 enclosure), SYS-REQ-017 (BMS data items), SYS-REQ-018 (ARD battery cycles) each referenced engineering concepts not decomposed into any subsystem requirement, leaving the implementation allocation ambiguous.

  4. Synthetic/manufacturing acknowledged — Findings 1–7 flagging missing manufacturing requirements for certified electronic subsystems are ontological artefacts; manufacturing requirements are addressed by component certifications (IEC 61508, CE marking) captured in {{sub:SUB-REQ-042}} and {{sub:SUB-REQ-048}}. Stored acknowledgement facts in SE:industrial-elevator namespace.

Corrections

Seven requirements created this session, all with rationale and trace links:

  • {{sub:SUB-REQ-051}}: Safety Controller hot standby architecture, 50 ms switchover, SIL-3 justified — derives from {{sys:SYS-REQ-003}}
  • {{sub:SUB-REQ-052}}: Group Dispatch Controller stateful failover, 200 ms takeover, 80% throughput floor — derives from {{sys:SYS-REQ-009}}
  • {{sub:SUB-REQ-053}}: VFD state machine (7 states, 5 ms invalid rejection) — derives from {{sys:SYS-REQ-003}}
  • {{sub:SUB-REQ-054}}: Door Operator state machine (6 states, 200 ms reversal protection, 500 ms sensor fault) — derives from {{sys:SYS-REQ-005}}
  • {{sub:SUB-REQ-055}}: Controller cabinet IP54 enclosure, 800×600×250 mm — derives from {{sys:SYS-REQ-015}}
  • {{sub:SUB-REQ-056}}: BMS BACnet data objects (4 items, 1 Hz, ±2% energy) — derives from {{sys:SYS-REQ-017}}
  • {{sub:SUB-REQ-057}}: ARD battery 3-cycle endurance + 24 h self-test reporting to BMS — derives from {{sys:SYS-REQ-018}}

Five verification entries ({{ver:VER-REQ-035}} through {{ver:VER-REQ-039}}) created for the four highest-risk new requirements, bringing VER coverage to approximately 60% of session-445 SUB requirements.

flowchart TB
  n0["Safety CPU"]
  n1["Speed and Position Monitor"]
  n2["Safety Chain Interface Module"]
  n3["Seismic and Fire Interface"]
  n4["Safety Output Actuator"]
  n1 -->|speed/position data, trip signals| n0
  n2 -->|safety chain status| n0
  n3 -->|fire/seismic events| n0
  n0 -->|brake engage / VFD inhibit| n4

Residual

Lint reduced from 67 to 63 medium findings. Remaining findings: 9 Synthetic/manufacturing ontological findings (all acknowledged via Substrate facts for certified assembly subsystems), 4 output-specification gaps for BMS and Safety Command Validator, and ~50 SYS-to-SUB concept coverage findings for detailed technical terms embedded in SYS requirement text. These are string-match lint artefacts (e.g. “nearest floor within 10 seconds” parsed as a standalone concept); the engineering intent is covered by existing subsystem requirements.

Next

Validate trace chain completeness: walk each ConOps scenario through STK → SYS → SUB → VER to confirm no gap survives. The {{entity:Safety Controller Subsystem}} safe-state chain (SYS-REQ-003/004 → SUB-REQ-001 through 010 → VER entries) should be the first chain audited given its SIL-3 classification.

← all entries