PINK DITAv2 flaw doc: V1+V2+V3+W10 fix markers + pass 3/4 tables
Integrates flaw doc updates from the side chain (post-Pass20) onto branch HEAD: - V1/V2/V3 rows marked ✅ FIXED 8d9762c - W10 row marked ✅ FIXED e90d542 - Pass 3 fixes table (V1/V2/V3 detail) - Pass 4 fixes table (W10 detail) - Header: "17 total fixed" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -55,7 +55,9 @@
|
||||
| V | Pass 19 (Lifecycle/Rust Subtleties/Test Infra) | 14 | 5 | 2 | 4 | 3 | 0 |
|
||||
| W | Pass 20 (Config/Math Signs/BingX Protocol) | 14 | 4 | 7 | 3 | 0 | 0 |
|
||||
| X | Pass 21 (Rust Build/Deps/Python Packaging/Shared Mem) | 14 | 3 | 5 | 6 | 0 | 0 |
|
||||
| **Total** | | **375** | **42** | **113** | **109** | **64** | **37** |
|
||||
| Y | Pass 22 (Serde Round-Trip/Mock Fidelity/Protocol) | 14 | 1 | 4 | 5 | 4 | 0 |
|
||||
| Z | Pass 23 (Closure Review/Unfinished Fixes/Ops Gaps) | 14 | 0 | 3 | 6 | 5 | 0 |
|
||||
| **Total** | | **403** | **43** | **120** | **120** | **64** | **37** |
|
||||
|
||||
---
|
||||
|
||||
@@ -602,6 +604,52 @@
|
||||
|
||||
---
|
||||
|
||||
## Y-Series: Serde Round-Trip, Mock Fidelity, Protocol Consistency (Pass 22)
|
||||
|
||||
*Full detail in TRACE doc under "PASS 22 — SERDE FIELD-BY-FIELD ROUND-TRIP, MOCK VENUE FIDELITY GAPS, PROTOCOL CONSISTENCY."*
|
||||
|
||||
| # | Flaw | Layer | Severity |
|
||||
|---|------|-------|----------|
|
||||
| Y1 | `exit_leg_ratios` serde default `[]` vs struct default `vec![1.0]` — wrong ratio on restore | Rust | Medium |
|
||||
| Y2 | `KernelIntent.slot_id` is `i64` — inconsistent with `TradeSlot`/`KernelTransition` `usize` | Rust | Low |
|
||||
| Y3 | `KernelIntent.stage` serde default `IDLE` vs Python default `INTENT_CREATED` | Rust | Low |
|
||||
| Y4 | `AccountState` injects `"k_net_fees"` as duplicate of serde's `k_fees_paid` | Rust | Low |
|
||||
| Y5 | `asyncio.sleep(0.8)` in ~295 generated test bodies — timing-dependent flaky | Test | **Critical** |
|
||||
| Y6 | MockVenueAdapter no `rate_limit` flag — RATE_LIMITED path untested | Test | **High** |
|
||||
| Y7 | MockVenueAdapter `reconcile()` returns `[]` always — late fills untestable | Test | **High** |
|
||||
| Y8 | MockVenueAdapter emits one fill per submit — multi-partial-fill untestable | Test | **High** |
|
||||
| Y9 | MockVenueAdapter no `connect()` — runtime error if protocol gains it | Test | **High** |
|
||||
| Y10 | `libc` declared in `Cargo.toml` but never used — dead dependency | Rust | Medium |
|
||||
| Y11 | MockVenueAdapter no `close()` — lifecycle cleanup untestable | Test | Medium |
|
||||
| Y12 | MockVenueAdapter fills synchronous — masks async timing bugs | Test | Medium |
|
||||
| Y13 | `IndexSet` JSON array doesn't encode LRU semantics — fragile on manual edit | Rust | Low |
|
||||
| Y14 | `_slot_from_payload()` duplicated in two files with different behavior | Bridge | Medium |
|
||||
|
||||
---
|
||||
|
||||
## Z-Series: Closure Review — Unfinished Fixes, Operational Gaps, Final Edge Cases (Pass 23)
|
||||
|
||||
*Full detail in TRACE doc under "PASS 23 — CLOSURE/REVIEW: UNFINISHED FIXES, OPERATIONAL GAPS, FINAL EDGE CASES."*
|
||||
|
||||
| # | Flaw | Layer | Severity |
|
||||
|---|------|-------|----------|
|
||||
| Z1 | `_safe_enum` fix applied to `rust_backend.py` but NOT `real_zinc_plane.py` — other copy crashes | Bridge | **High** |
|
||||
| Z2 | `_backup_20260530/` has `__init__.py` — accidental import loads old code | Repo | Medium |
|
||||
| Z3 | `RealZincControlUnavailable` and `RealZincUnavailable` separate classes | Bridge | Low |
|
||||
| Z4 | `test_account_reconcile_faults.py` requires Rust lib with no skip guard | Test | Low |
|
||||
| Z5 | No health check endpoint — silent failures invisible to orchestration | Ops | **High** |
|
||||
| Z6 | `process_intent()` calls `venue.submit()` without exception handler | Bridge | **High** |
|
||||
| Z7 | `snapshot()` mixes Rust and Python accounting — capital values can diverge | Bridge | Medium |
|
||||
| Z8 | `BingxVenueAdapter.close()` executor null-to-shutdown TOCTOU race | Venue | Medium |
|
||||
| Z9 | Generated test f-string `chr(34)` template — SyntaxError risk on old Python | Test | Medium |
|
||||
| Z10 | `launcher.py` uses Python 3.10+ `\|` union syntax — no min version documented | Config | Medium |
|
||||
| Z11 | `_encode_packet`/`_decode_packet` duplicated in two files | Plane | Low |
|
||||
| Z12 | Concurrent `process_intent()` on same slot — no lock, no queue | Bridge | Medium |
|
||||
| Z13 | `test_alpha_blue_untouched_g7.py` hardcoded absolute path | Test | Low |
|
||||
| Z14 | No exchange timestamp monotonicity check in WS stream | Venue | Low |
|
||||
|
||||
---
|
||||
|
||||
## H-Series: Edge Domains — Dependencies, Error Handling, Types, Contracts (Pass 5)
|
||||
|
||||
*Full detail in TRACE doc under "PASS 5 — EDGE DOMAINS."*
|
||||
|
||||
Reference in New Issue
Block a user