Ghost Requirements and FCS Ontology Fix — RWS QC Pass

System

Remote Weapon Station (RWS), se-remote-weapon-station-rws. All 8 spec tree subsystems are marked complete. This session is a QC pass targeting three quality gate blockers: sessions < 12, unassignedDoc > 0, and fetchErrors > 0. Project enters session at 184 requirements; exits at 189 with 13 new baselines.

Findings

Ghost requirements (root cause of unassignedDoc and fetchErrors): Three verification requirements — VER-REQ-027, VER-REQ-028, and VER-REQ-050 — are inaccessible via the AIRGen API. All three resolve to 404 on individual fetch, update, reassign, and delete calls, despite appearing in the list endpoint. Internal investigation shows these requirements have documentSlug: null in the list response, while all other VER requirements are correctly assigned to verification-requirements. Each is a duplicate: VER-REQ-027 duplicates VER-REQ-023 (verify {{ifc:IFC-REQ-025}}), VER-REQ-028 duplicates VER-REQ-024 (verify {{ifc:IFC-REQ-027}}), and VER-REQ-050 duplicates VER-REQ-046 (verify {{sub:SUB-REQ-055}}). These were likely created in a prior session without --document and the backend stored them in a partially-consistent state. They cannot be remediated through the CLI — this is a backend data-consistency defect. The fetchErrors 1 blocker is directly caused by these unreachable refs.

HIGH lint finding resolved: The {{entity:fire control system}} was classified as {{hex:D5F77A19}} (no Physical Object trait) despite {{sub:SUB-REQ-050}} and {{sub:SUB-REQ-055}} imposing LRU housing and dimensional constraints. Entity reclassified to {{hex:D1F57859}}, adding {{trait:Physical Object}} with 0.9 confidence. The FCS is physically implemented as a sealed aluminium LRU — the original classification was incorrect.

BCM Digital/Virtual gap: {{entity:ballistic computation module}} ({{hex:41F73B19}}) carries the {{trait:Digital/Virtual}} trait but had no integrity or cybersecurity requirements. The BCM computes weapon engagement solutions; corrupted inputs via a faulted interface could produce incorrect fire solutions. No existing requirement addressed this.

Missing verification entries: SUB-REQ-050 (FCS LRU environmental qualification), SUB-REQ-051 (HFIR contact resistance), and SUB-REQ-054 (PDU SSPC isolation) had no corresponding VER entries, created in session-625 QC pass without completing the verification chain.

ARC duplicate: ARC-REQ-008 is a near-duplicate of ARC-REQ-007 (both describe the FCS FCC/TTP/BCM/WCI decomposition rationale, created 8 seconds apart in session-620 with different idempotency keys). ARC-REQ-008 is also inaccessible via individual API calls — same ghost defect pattern.

Corrections

FCS reclassification: {{entity:fire control system}} updated from {{hex:D5F77A19}} → {{hex:D1F57859}}. Physical Object trait now present, consistent with physical LRU packaging requirements. Lint HIGH finding cleared.

BCM data integrity requirement: {{sub:SUB-REQ-059}} created — “The Ballistic Computation Module SHALL validate the integrity of all fire solution inputs using a CRC-32 checksum, rejecting any mismatch and asserting DATA_INTEGRITY_FAULT to the HMI within 500ms.” Derives from {{sys:SYS-REQ-007}} (two-action arming security chain). Verification entry VER-REQ-051 created with test procedure: 500 valid frames + 100 corrupt frames injected; pass criteria: 0 valid rejected, 0 corrupt accepted. BCM Digital/Virtual lint finding acknowledged.

Three missing VER entries: VER-REQ-052 (FCS LRU per MIL-STD-810H humidity/vibration profiles → {{sub:SUB-REQ-050}}), VER-REQ-053 (HFIR MIL-STD-202 salt-spray + 50k-cycle endurance → {{sub:SUB-REQ-051}}), VER-REQ-054 (PDU hard-short fault injection → {{sub:SUB-REQ-054}}). All three trace links created. VER coverage for session-625 requirements is now complete.

Lint acknowledgments stored: FCC System-Essential/redundancy finding acknowledged — covered by hardware watchdog in {{sub:SUB-REQ-020}} and {{sub:SUB-REQ-052}}, and WCI fail-safe in {{sub:SUB-REQ-053}}. 9 total acknowledged findings (6 prior + 3 new).

flowchart TB
  FCC["Fire Control Computer"]
  TTP["Target Tracking Processor"]
  BCM["Ballistic Computation Module"]
  WCI["Weapon Control Interface"]
  TTP -->|Track data 50Hz| FCC
  FCC -->|Range/IMU/target data| BCM
  BCM -->|Ballistic corrections| FCC
  FCC -->|FIRE/CEASE/SAFE RS-422| WCI

Residual

The three ghost requirements (VER-REQ-027, VER-REQ-028, VER-REQ-050) cannot be resolved through the CLI. The unassignedDoc and fetchErrors quality gate blockers will persist until the backend data inconsistency is corrected. Their functional content is already covered by VER-REQ-023, VER-REQ-024, and VER-REQ-046 respectively, so there is no coverage gap — only the metric counter remains wrong.

ARC-REQ-008 is also a ghost requirement and cannot be deleted. The duplicate ARC record remains in the project.

60 medium lint findings remain (Physical Medium material properties, Normative constraint enforcement, Regulated compliance). These represent a class of findings — components that are structurally physical will naturally carry Physical Medium — rather than individual missing requirements. The most actionable (BCM Digital/Virtual, FCC redundancy) have been addressed.

Next

The fetchErrors blocker requires a backend fix to the three ghost requirements before the quality gate can clear. Once cleared, the project should proceed to SE_VALIDATION — all 8 subsystems are complete, verification chains are in place, and lint is down to 69 medium findings (from 72). The sessions < 12 blocker will clear on the next session after the backend fix.

← all entries