Skip to content

fix(reqif): import fails on an unresolved ENUM-VALUE-REF (REQ-119, F2)#375

Merged
avrabe merged 1 commit into
mainfrom
fix/req-119-reqif-enum-loud-fail
May 31, 2026
Merged

fix(reqif): import fails on an unresolved ENUM-VALUE-REF (REQ-119, F2)#375
avrabe merged 1 commit into
mainfrom
fix/req-119-reqif-enum-loud-fail

Conversation

@avrabe
Copy link
Copy Markdown
Contributor

@avrabe avrabe commented May 31, 2026

Bug-hunt finding (REQ-119, f2-silent-failure, 3/3 lens-confirmed). An ENUM-VALUE-REF matching no defined ENUM-VALUE identifier was silently dropped via filter_map, yielding a degraded enum value with no signal. Import now returns an Err naming the unresolved ref(s). Regression test; all 45 reqif tests green; clippy --all-targets clean. Marks REQ-119 implemented.

Bug-hunt finding (f2-silent-failure, 3/3 lens-confirmed). An ENUM-VALUE-REF
matching no ENUM-VALUE @Identifier in any enumeration datatype was silently
dropped by `.filter_map(|r| enum_value_names.get(...))`, producing a degraded /
incomplete enum field value with no signal — an internally-inconsistent ReqIF
imported as if clean.

The resolver now separates resolved from unresolved refs and returns an Err
naming the unresolved one(s), so the inconsistency surfaces instead of
corrupting the imported value. Regression test
`parse_reqif_fails_on_unresolved_enum_value_ref`; all 45 reqif tests green.

Implements: REQ-119
Verifies: REQ-119
Refs: REQ-004

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

📐 Rivet artifact delta

Change Count
Added 0
Removed 0
Modified 1
Downstream impacted (depth ≤ 5) 0

Graph

graph LR
  REQ_119["REQ-119"]:::modified
  classDef added fill:#d4edda,stroke:#28a745,color:#155724
  classDef removed fill:#f8d7da,stroke:#dc3545,color:#721c24
  classDef modified fill:#fff3cd,stroke:#ffc107,color:#856404
  classDef overflow fill:#e2e3e5,stroke:#6c757d,color:#495057,stroke-dasharray: 3 3
Loading
Modified
ID Changes
REQ-119

📎 Full HTML dashboard attached as workflow artifact rivet-delta-pr-375download from the workflow run.

Posted by rivet-delta workflow. The graph shows only changed artifacts; open the HTML dashboard (above) for full context.

@avrabe avrabe merged commit fc91f96 into main May 31, 2026
19 of 38 checks passed
@avrabe avrabe deleted the fix/req-119-reqif-enum-loud-fail branch May 31, 2026 22:09
@codecov
Copy link
Copy Markdown

codecov Bot commented May 31, 2026

Codecov Report

❌ Patch coverage is 98.36066% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
rivet-core/src/reqif.rs 98.36% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant