Skip to content

Commit fa2c65c

Browse files
docs(tracking): align roadmap and oracle status records
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
1 parent 4f3c7fd commit fa2c65c

2 files changed

Lines changed: 12 additions & 12 deletions

File tree

ROADMAP.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
- [x] **H-2b.** Generator/Program.fs가 Core API를 직접 호출하도록 변경 (Config/Dbc/Codegen/Errors open)
5656
- [x] **H-2c.** Generator의 중복 모듈 제거: `Config.fs`, `Ir.fs`, `Dbc.fs`, `Codegen.Utils.fs`, `Codegen.Message.fs`, `Codegen.Registry.fs`, `Codegen.fs` — fsproj에서 제거 + 디스크에서 삭제
5757
- [x] **H-2d.** Generator/Result.fs → `Compat.fs`로 통합 (Result active pattern + Ir/Config/Dbc/Codegen 역호환 브리지)
58-
- [x] **H-2e.** Generator 기존 테스트(`tests/Generator.Tests/`) 16/16 통과 확인 (Compat.fs 브리지 경유)
58+
- [x] **H-2e.** Generator 기존 테스트(`tests/Generator.Tests/`) 통과 확인 (완료 당시 16/16, Compat.fs 브리지 경유)
5959
- [x] **H-2f.** E2E 검증: Generator CLI + Signal.CANdy.CLI 양쪽 모두 코드 생성 + gcc 빌드 + roundtrip 테스트 통과
6060

6161
### H-3. Facade 에러 매핑 정밀화
@@ -78,14 +78,14 @@
7878
- [x] **M-1b.** `Generator.fsproj`에서 `Argu 6.1.1` 패키지 참조 제거 (H-2c에서 완료)
7979
- [x] **M-1c.** `Generator.fsproj`에서 `FSharp.SystemTextJson 1.4.36` 패키지 참조 제거 (H-2c에서 완료)
8080
- [x] **M-1d.** `Generator.fsproj`에서 `FsToolkit.ErrorHandling 5.0.1` 패키지 참조 제거 (H-2c에서 완료)
81-
- [x] **M-1e.** `dotnet restore && dotnet build && dotnet test` 통과 확인 (63/63 pass)
81+
- [x] **M-1e.** `dotnet restore && dotnet build && dotnet test` 통과 확인 (완료 당시 63/63 pass)
8282

8383
### M-2. Dead Code 삭제
8484

8585
- [x] **M-2a.** `Ir.fs``SignalType` DU 제거 (Signed | Unsigned | Float — 어디에서도 사용되지 않음)
8686
- [x] **M-2b.** `Core/Library.fs` — 플레이스홀더 파일 내용 점검 (실제 112줄 Facade — 유지)
8787
- [x] **M-2c.** `templates/` 디렉토리 점검 — L-1 Scriban 도입 시 사용 예정, 유지
88-
- [x] **M-2d.** 빌드 및 테스트 통과 확인 (63/63 pass)
88+
- [x] **M-2d.** 빌드 및 테스트 통과 확인 (완료 당시 63/63 pass)
8989

9090
### M-3. 코드 생성 문자열 가독성 개선
9191

@@ -115,12 +115,12 @@
115115
### L-2. CRC/Counter 자동 검증 구현
116116

117117
- [x] **L-2a.** `Config.CrcCounterCheck` 플래그 활성화 설계
118-
- [x] **L-2b.** CRC/Counter 시그널에 대한 코드 생성 로직 구현
119-
- [x] **L-2c.** 검증 테스트 추가
118+
- [x] **L-2b.** CRC/Counter 시그널에 대한 코드 생성 로직 구현 (명시적 YAML 메타데이터 기반, validate/passthrough/fail_fast, CRC-8 only)
119+
- [x] **L-2c.** 검증 테스트 추가 (CRC-8 validate 경로, passthrough/fail_fast, facade/API 에러 매핑 포함)
120120

121121
### L-3. valid 비트마스크 자동 확장
122122

123-
- [x] **L-3a.** 시그널 수 > 32인 메시지에서 `uint64_t` 또는 배열 기반 valid 필드 자동 선택
123+
- [x] **L-3a.** 시그널 수 > 32인 메시지에서 valid 필드 자동 확장 (`33–64 → uint64_t`, `>64 → UnsupportedFeature`; 배열 기반 fallback은 backlog)
124124
- [x] **L-3b.** 매크로 생성 로직 업데이트
125125
- [x] **L-3c.** 대규모 메시지 테스트 DBC 추가
126126

@@ -138,9 +138,9 @@
138138
> 기존 C/H/M/L 항목과 별개로, 오라클 검증 파이프라인 플랜(Task 0~9)의 현재 도달 지점을 기록합니다.
139139
140140
> **Source-of-Truth 우선순위**:
141-
> 1. `Reports/20260312-1530_Oracle_실패해결_완료.md`
142-
> 2. `tests/oracle/ORACLE_RESULTS.md`
143-
> 3. `tests/oracle/CATEGORY_C_EXCEPTIONS.md`
141+
> 1. 최신 `Reports/` 검증/정리 문서
142+
> 2. `tests/oracle/CATEGORY_C_EXCEPTIONS.md` (resolved status 포함)
143+
> 3. `tests/oracle/ORACLE_RESULTS.md` (통합 실행 스냅샷; 일부 recommendation 문구는 시점상 stale 가능)
144144
> 4. `.sisyphus/*` (보조 작업 상태; canonical source 아님)
145145
146146
- [x] **O-1. Task 0** 만료 플랜 아카이브 + boulder 갱신 (`.sisyphus/plans/archived/*`, `.sisyphus/boulder.json`, `Reports/20260312-1530_Oracle_실패해결_완료.md`)

tests/oracle/ORACLE_RESULTS.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Additionally: Python oracle overflow guard added (`e0fc6fa`).
5757
| #5 — DBC raw range sentinel | chrysler_pacifica_2017, mercedes_benz_e350 | 1,101 | `dbc_raw_range_sentinel` |
5858
| All-Cat-C — Ford Lincoln | ford_lincoln_base_pt | 629 | mixed (see below) |
5959
| All-Cat-C — Tesla | tesla_can | 45 | `float32_rounding` + adversarial OOR |
60-
| Mux skip | hyundai_2015_ccan | 33 (skipped) | `cantools_oracle_limitation` |
60+
| Mux skip | hyundai_2015_ccan | 33 (historical; resolved in B-O2) | `cantools_oracle_limitation` |
6161

6262
**Ford Lincoln 629 failures — all Category C:**
6363
- 227× `value_diff``float32_rounding` (Exception #2)
@@ -133,9 +133,9 @@ Matrix summary: **8/8 configs passed**, 4,704 passed, 0 failed, 0 skipped.
133133

134134
## Recommendations
135135

136-
1. **DBC raw-range detection heuristic** (ROADMAP): add optional heuristic to detect when `[min|max]` likely stores raw counts (e.g., offset < min, or factor makes physical range impossible). Would resolve 1,101 Category C failures.
136+
1. **DBC raw-range detection heuristic** (ROADMAP): ~~add optional heuristic to detect when `[min|max]` likely stores raw counts (e.g., offset < min, or factor makes physical range impossible). Would resolve 1,101 Category C failures.~~ **COMPLETED (B-O1)**`isRawRangeSentinel` added in `Codegen.fs`; see `CATEGORY_C_EXCEPTIONS.md` for resolved status.
137137
2. **Oracle multiplex mode** (ROADMAP): ~~extend `run_oracle.py` to support multi-branch signal selection; would cover the 83 currently-skipped signals.~~ **COMPLETED (B-O2)**`_generate_mux_vectors()` in `engine.py` provides per-branch oracle testing.
138-
3. **Valid bitmask auto-widening** (ROADMAP L-3): auto-widen to `uint64_t` for messages with >32 signals.
138+
3. **Valid bitmask auto-widening** (ROADMAP L-3): ~~auto-widen to `uint64_t` for messages with >32 signals.~~ **COMPLETED (B-O3)** — ≤32 uses `uint32_t`, 33–64 uses `uint64_t`, >64 returns `UnsupportedFeature`.
139139
4. **CI corpus gate**: keep examples+matrix as required pass gate; track corpus adjusted pass rate (≥99%) as a trend metric.
140140

141141
## Reproduction Commands

0 commit comments

Comments
 (0)