docs: add deep doc-code analysis (mismatch, out-of-date, link coverage)
- docs-code-mismatch.md: 17 mismatches found (2 critical, 4 major, 11 minor) - docs-out-of-date.md: 12 outdated docs, 8 undocumented recent changes - docs-link-not-covered.md: 2 broken links, 9 missing targets, 18 orphaned docs - reviews/: cross-validation for all 3 analyses, corrections applied Key findings: - LICENSE-APACHE/LICENSE-MIT files missing (DEC-020 non-compliance) - README missing 3 crates (resolver, prefetch, cache) - CHANGELOG missing v0.3.0+ entries - SAD/SDD missing file transfer, poke, desktop VAD, chanora_cache
This commit is contained in:
@@ -0,0 +1,134 @@
|
||||
# Review: Documentation-Code Mismatch Analysis
|
||||
|
||||
**Reviewer:** opencode (automated)
|
||||
**Reviewed document:** `docs/offline-knowledge/docs-code-mismatch.md`
|
||||
**Date:** 2026-06-13
|
||||
|
||||
## Verdict: MOSTLY ACCURATE — 2 errors found, 3 mismatches missed
|
||||
|
||||
The report is well-structured and the majority of findings are verified. However, there are factual errors in 2 findings, 3 additional mismatches were missed, and severity classifications need adjustment in 2 cases.
|
||||
|
||||
---
|
||||
|
||||
## 1. Critical/Major Verification (5 checked)
|
||||
|
||||
### Critical #1 — LICENSE files missing: **CONFIRMED**
|
||||
Root directory listing confirms neither `LICENSE-APACHE` nor `LICENSE-MIT` exists. README lines 428-431 link to them. `docs/security/license-inventory.md:9-10` and `docs/security/flutter-license-inventory.md:11-12` also reference them. Severity (Critical) is appropriate — broken links in README and legal compliance gap.
|
||||
|
||||
### Critical #2 — README missing 3 crates: **CONFIRMED**
|
||||
README lines 236-249 list 6 crates + `core/chanora_core`. `Cargo.toml:28-39` workspace members list 10 crates including `chanora_resolver`, `chanora_prefetch`, `chanora_cache`. Severity (Critical) is appropriate — primary discovery entry point is incomplete.
|
||||
|
||||
### Major #3 — SAD missing chanora_cache: **CONFIRMED**
|
||||
`docs/architecture/sad.md:39-52` lists 12 components. `chanora_cache` is absent despite being a workspace member (`Cargo.toml:34`). Severity (Major) is appropriate.
|
||||
|
||||
### Major #4 — snapshot_state_mapper.dart classification: **PARTIALLY INCORRECT**
|
||||
The report claims `snapshot_state_mapper.dart` is "listed as a widget-layer file" but the SDD (`docs/architecture/sdd.md:19`) actually says upstream is "Flutter widget/**service** layer" — acknowledging it spans both. The file IS in `services/`, not `widgets/`, so there is a mismatch, but the report overstates it by ignoring the "service" qualifier. **Severity should be downgraded from Major to Minor.** Also, the report missed that `channel_spacer.dart` (same SDD-MOD-003 row) is also in `services/`, not `widgets/` — same issue, not flagged.
|
||||
|
||||
### Major #5 — windows-smoke.md branch reference: **CONFIRMED**
|
||||
`tools/windows-smoke.md:5` says `product/scaffold-v0`. `CHANGELOG.md:99` confirms "Default base branch is `main` (previously `product/scaffold-v0`)". Severity (Major) is appropriate — procedure references obsolete branch.
|
||||
|
||||
---
|
||||
|
||||
## 2. Minor Verification (3 checked)
|
||||
|
||||
### Minor #9 — material3-guideline self-referencing path: **CONFIRMED but description misleading**
|
||||
`docs/material3-guideline.md:10` says `**Repo path:** docs/ui-ux/material3-guideline.md`. The file IS at `docs/material3-guideline.md`. However, `docs/ui-ux/material3-guideline.md` is a **redirect stub** that points to the canonical file — not a "circular reference confusion" as the report claims. It's a documented migration artifact. Severity (Minor) is appropriate.
|
||||
|
||||
### Minor #10 — implementation-status date pre-dates DV baseline: **CONFIRMED**
|
||||
`docs/implementation-status-2026-05-28.md:1` is dated 2026-05-28. `docs/governance/git-commit-message-convention.md:4` is dated 2026-05-29 (DV baseline date). Severity (Minor) is appropriate.
|
||||
|
||||
### Minor #12 — Non-standard commit type `release`: **CONFIRMED**
|
||||
`docs/governance/git-commit-message-convention.md:18` uses `release(android)`. Standard Conventional Commits types are: `feat`, `fix`, `docs`, `style`, `refactor`, `perf`, `test`, `build`, `ci`, `chore`, `revert`. `release` is non-standard. Severity (Minor) is appropriate — it's a project convention extension, not a broken reference.
|
||||
|
||||
---
|
||||
|
||||
## 3. Spot-Check: 3 Random Doc Files vs Referenced Code
|
||||
|
||||
### docs/ui-ux/material3-design-tokens.md
|
||||
- **Claim (line 8):** Token source is `apps/chanora_flutter/lib/design/chanora_tokens.dart`
|
||||
- **Actual:** File exists at that path. **PASS — no mismatch found.**
|
||||
|
||||
### docs/i18n/localization-architecture.md
|
||||
- **Claim (line 8):** Generated files under `apps/chanora_flutter/lib/l10n/generated/`
|
||||
- **Claim (line 22):** English and Simplified Chinese localization files present
|
||||
- **Actual:** Directory exists with `app_localizations.dart`, `app_localizations_en.dart`, `app_localizations_zh.dart`. **PASS — no mismatch found.**
|
||||
|
||||
### docs/architecture/desktop-ptt-architecture.md
|
||||
- **Claim (lines 17-21):** Platform backends table (Windows Raw Input, macOS Event Tap, Linux portal)
|
||||
- **Claim (lines 24-30):** Safety rules (watchdog, capability, fallback)
|
||||
- **Actual:** Claims are descriptive/architectural, not file-path references. Cannot verify runtime behavior from static analysis, but no obvious code contradiction. **PASS — no mismatch found.**
|
||||
|
||||
---
|
||||
|
||||
## 4. Severity Classification Review
|
||||
|
||||
| # | Claim | Report Severity | Correct? | Notes |
|
||||
|---|-------|----------------|----------|-------|
|
||||
| 1 | LICENSE files missing | Critical | **Yes** | Legal/compliance gap + broken links |
|
||||
| 2 | README missing 3 crates | Critical | **Yes** | Primary discovery entry incomplete |
|
||||
| 3 | SAD missing chanora_cache | Major | **Yes** | Architecture doc incomplete |
|
||||
| 4 | snapshot_state_mapper.dart | Major | **No — should be Minor** | SDD already says "widget/service layer"; overclaimed |
|
||||
| 5 | windows-smoke branch | Major | **Yes** | Procedure references obsolete branch |
|
||||
| 6 | sysrs.md suggested names | Major | **Yes** | 5 non-existent file paths |
|
||||
| 7 | DEC-030 partially superseded | Major | **Borderline** | Code has full VAD impl; "partially superseded" undersells it. Could be Major or Minor. |
|
||||
| 8 | baseline-candidate description | Minor | **Yes** | Cosmetic underselling |
|
||||
| 9 | material3 self-ref path | Minor | **Yes** | Redirect stub, not circular |
|
||||
| 10 | implementation-status date | Minor | **Yes** | Date drift |
|
||||
| 11 | SDD/SAD non-itemized IDs | Minor | **Yes** | Historical references |
|
||||
| 12 | Non-standard commit type | Minor | **Yes** | Convention extension |
|
||||
| 13 | Material3 version stops at 0.9.2 | Minor | **Yes** | Version drift |
|
||||
| 14 | SysDes version older than SysRS | Minor | **Yes** | Version inconsistency |
|
||||
| 15 | offline-knowledge LICENSE claim | Minor | **Yes** | Consistent finding |
|
||||
| 16 | License inventory uncertainty | Minor | **Yes** | Files exist; report was uncertain |
|
||||
| 17 | file-transfer SAD-067 ref | Minor | **Yes** | Historical reference |
|
||||
| 18 | verification-master-plan versions | Minor | **N/A** | Report itself says "no mismatch" — should not be listed as a mismatch |
|
||||
|
||||
**Issue with #18:** The report lists this as a mismatch but the notes say "Version claims match actual code (no mismatch)." This is a false positive — it should be removed from the mismatch list or moved to the "verified correct" section.
|
||||
|
||||
---
|
||||
|
||||
## 5. Missed Mismatches
|
||||
|
||||
### M1. `channel_spacer.dart` also in wrong directory (SDD-MOD-003)
|
||||
- **Doc:** `docs/architecture/sdd.md:19` lists `channel_spacer.dart` under SDD-MOD-003 alongside `snapshot_state_mapper.dart`
|
||||
- **Code:** `channel_spacer.dart` is at `apps/chanora_flutter/lib/services/channel_spacer.dart`, not in `widgets/`
|
||||
- **Severity:** Minor (same as snapshot_state_mapper — both are in services/)
|
||||
- **Why missed:** Report focused on `snapshot_state_mapper.dart` but didn't check the other file in the same row
|
||||
|
||||
### M2. `chanora_cache` missing from dependency-and-supply-chain-report.md
|
||||
- **Doc:** `docs/security/dependency-and-supply-chain-report.md:25` lists 9 Rust workspace crates
|
||||
- **Code:** `Cargo.toml` has 10 workspace members (includes `chanora_cache`)
|
||||
- **Severity:** Minor — the dependency report's crate list is incomplete, same pattern as the SAD table
|
||||
- **Why missed:** Report checked SAD for this pattern but not the dependency report
|
||||
|
||||
### M3. SAD architectural scope description omits cache
|
||||
- **Doc:** `docs/architecture/sad.md:17` says "Rust owns connection orchestration, protocol isolation, audio processing, storage coordination, diagnostics, server resolution, prefetch policy, and bridge DTOs"
|
||||
- **Code:** `chanora_cache` crate exists for avatar/icon blob caching — not mentioned in scope description
|
||||
- **Severity:** Minor — descriptive text omission, not a structural table gap
|
||||
- **Why missed:** Report checked the component table but not the prose description
|
||||
|
||||
---
|
||||
|
||||
## 6. Additional Observations
|
||||
|
||||
1. **Mismatch #18 is a false positive.** It's listed as a mismatch but the notes confirm versions match. Remove it.
|
||||
|
||||
2. **Mismatch #4 overclaims.** The SDD uses "Flutter widget/service layer" as upstream, not "Flutter widget layer." The report's characterization is inaccurate. The file IS in `services/` so there's still a mismatch, but it's less severe than described.
|
||||
|
||||
3. **Mismatch #7 (DEC-030) severity is borderline.** The code has `VoiceActivityStateMachine`, `TransmitMode::VoiceActivity`, and VAD backends in `vad/`. The doc says "Partially superseded by desktop enablement." This could be argued as Major (policy doc doesn't reflect implementation completeness) or Minor (it does say "partially" which leaves room). Current Major classification is defensible but the report should note the ambiguity.
|
||||
|
||||
4. **The dependency report has the same `chanora_cache` omission** as the SAD. This is a consistent pattern across multiple docs — the cache crate was added to the workspace after these documents were baselined.
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
| Category | Count |
|
||||
|----------|-------|
|
||||
| Verified correct | 15 of 18 |
|
||||
| Factual errors | 2 (#4 overclaims, #18 false positive) |
|
||||
| Missed mismatches | 3 |
|
||||
| Severity adjustments needed | 1 (#4: Major → Minor) |
|
||||
| False positives to remove | 1 (#18) |
|
||||
|
||||
**Overall assessment:** The mismatch analysis is ~83% accurate. The core findings (LICENSE files, missing crates in README, SAD table gaps) are solid and well-evidenced. The report would benefit from removing mismatch #18, downgrading #4, and adding the 3 missed findings.
|
||||
@@ -0,0 +1,98 @@
|
||||
# Review: Documentation Link Not-Covered Analysis
|
||||
|
||||
**Reviewer:** opencode (automated)
|
||||
**Reviewed file:** `docs/offline-knowledge/docs-link-not-covered.md`
|
||||
**Date:** 2026-06-13
|
||||
|
||||
## Verdict: Largely Accurate — Minor Corrections Needed
|
||||
|
||||
The analysis is well-structured and its core findings are correct. A few claims need nuance or correction.
|
||||
|
||||
---
|
||||
|
||||
## 1. Broken Markdown Links (2 claimed)
|
||||
|
||||
**Verdict: CORRECT**
|
||||
|
||||
| Claim | Verified |
|
||||
|-------|----------|
|
||||
| `README.md:428` links to `LICENSE-APACHE` | Yes — file does not exist at repo root. Confirmed `ls LICENSE*` returns nothing. |
|
||||
| `README.md:431` links to `LICENSE-MIT` | Yes — file does not exist at repo root. |
|
||||
|
||||
Both are real broken links. The `NOTICE` file does exist (line 444), so that one is fine.
|
||||
|
||||
---
|
||||
|
||||
## 2. Missing File Targets (9 claimed — checked 3)
|
||||
|
||||
**Verdict: CORRECT**
|
||||
|
||||
| Claim | Verified |
|
||||
|-------|----------|
|
||||
| `LICENSE-APACHE` / `LICENSE-MIT` missing at repo root | Yes — confirmed missing. All 6 references across 3 files (README.md, license-inventory.md, flutter-license-inventory.md) are broken. |
|
||||
| `docs/chanora_SysDes.md` hypothetical | Yes — file does not exist. Same for `chanora_SRS.md` and `chanora_SAD.md` (checked). |
|
||||
| `snapshot_state_mapper.dart` directory mismatch | **Correct.** File exists at `apps/chanora_flutter/lib/services/snapshot_state_mapper.dart`, not under `widgets/` as documented in sdd.md. |
|
||||
| `voice_settings*.dart` glob ambiguity | **Correct.** Two files match: `voice_settings.dart` and `voice_settings_controls.dart`, both in `widgets/`. The glob reference is ambiguous. |
|
||||
|
||||
**Correction:** The analysis says `voice_settings*.dart` is listed under "Voice UI widgets" — this is actually correct placement since both files ARE in `widgets/`. The issue is glob ambiguity, not directory mismatch. The analysis description is accurate but the "Issue" column could be clearer.
|
||||
|
||||
---
|
||||
|
||||
## 3. Orphaned Docs (18 claimed — checked 3)
|
||||
|
||||
**Verdict: MOSTLY CORRECT, with nuance**
|
||||
|
||||
| Claim | Verified |
|
||||
|-------|----------|
|
||||
| `docs/offline-knowledge/function-inventory.md` orphaned | **Yes** — no references from outside `docs/offline-knowledge/`. Only self-referenced in its own README. |
|
||||
| `docs/offline-knowledge/coverage-analysis.md` orphaned | **Yes** — same situation. |
|
||||
| `docs/offline-knowledge/doc-quality-analysis.md` orphaned | **Yes** — same situation. |
|
||||
|
||||
These are correctly identified as orphaned from the main doc tree. However, the analysis correctly notes they are self-referencing within `docs/offline-knowledge/README.md`. The "Should Be Referenced From" column lists reasonable targets.
|
||||
|
||||
**Note:** The `docs/governance/document-review-report.md` and `docs/references/external-references.md` files (listed as potential parents) do exist, so the suggested link targets are valid.
|
||||
|
||||
---
|
||||
|
||||
## 4. Suspicious URLs (3 claimed)
|
||||
|
||||
**Verdict: CORRECT, but understated**
|
||||
|
||||
| Claim | Verified |
|
||||
|-------|----------|
|
||||
| `https://git.did.science/TeaSpeak/Server/Server` | **Correct** — self-hosted GitLab. The analysis notes it references branch `new-groups` commit `b54c6d4e`. This is a real fragility risk. |
|
||||
| `http://github.com/ejmahler/strength_reduce` | **Correct** — uses HTTP instead of HTTPS. Found at `docs/security/license-inventory.md:96`. |
|
||||
| `http://www.apache.org/licenses/` and `http://mozilla.org/MPL/2.0/` | **Correct** — these are HTTP URLs, but the analysis correctly notes they are in license text bodies, not navigational links. They are quotes from upstream license files, not Chanora's own links. |
|
||||
|
||||
**Correction needed:** The analysis says "various" for the flutter-license-inventory.md HTTP URLs but there are actually **93 HTTP URL occurrences** across the two license inventory files (mostly `apache.org/licenses`). The analysis should note these are all in quoted license text, not actionable links. Only the `strength_reduce` URL (line 96 of license-inventory.md) is a Chanora-authored navigational link using HTTP.
|
||||
|
||||
---
|
||||
|
||||
## 5. Missed Broken Links
|
||||
|
||||
**Verdict: NO MAJOR OMISSIONS FOUND**
|
||||
|
||||
After checking:
|
||||
- All markdown `[text](path)` links in `docs/` — the analysis covers them
|
||||
- README.md inline references — all verified
|
||||
- Cross-reference chains — confirmed correct
|
||||
- No additional broken internal links found
|
||||
|
||||
**One minor observation:** The analysis does not flag that `docs/governance/document-index.md` does not list `docs/offline-knowledge/` or `docs/superpowers/` documents. While noted as "orphaned," the document index itself is incomplete — it only lists DV-baseline documents, which may be intentional.
|
||||
|
||||
---
|
||||
|
||||
## Summary of Corrections
|
||||
|
||||
| # | Issue | Severity |
|
||||
|---|-------|----------|
|
||||
| 1 | HTTP URL count in flutter-license-inventory.md understated (93 occurrences, not "various") | Low — all are quoted license text |
|
||||
| 2 | `voice_settings*.dart` described as directory mismatch but is actually glob ambiguity | Low — wording issue |
|
||||
| 3 | Analysis could note that `docs/governance/document-index.md` intentionally excludes offline-knowledge/ | Informational |
|
||||
|
||||
## Recommended Actions (unchanged from original)
|
||||
|
||||
1. **P0:** Create `LICENSE-APACHE` and `LICENSE-MIT` at repo root
|
||||
2. **P1:** Fix `snapshot_state_mapper.dart` categorization in sdd.md
|
||||
3. **P2:** Fix HTTP URL for `strength_reduce` in license-inventory.md:96
|
||||
4. **P2:** Consider adding offline-knowledge docs to document index or references
|
||||
@@ -0,0 +1,140 @@
|
||||
# Review: docs-out-of-date.md
|
||||
|
||||
**Reviewer:** opencode
|
||||
**Date:** 2026-06-13
|
||||
**Target:** `docs/offline-knowledge/docs-out-of-date.md`
|
||||
|
||||
## Overall Assessment
|
||||
|
||||
The document is **mostly accurate** with **2 factual errors** and a few minor issues. The core analysis — stale version refs, undocumented changes, and outdated docs — is well-supported by evidence. However, two claims about the product-decision-register and document-index are incorrect.
|
||||
|
||||
---
|
||||
|
||||
## 1. Stale Version References — Spot-Check 3
|
||||
|
||||
### ✅ `docs/sysdes.md` line 6: Version 0.9.8
|
||||
**Verdict: Accurate.** File confirms `**Version:** 0.9.8` at line 6. Last change record is 2026-05-14 (30 days stale as of generation date).
|
||||
|
||||
### ✅ `docs/srs.md` line 7: Version 0.9.9
|
||||
**Verdict: Accurate.** File confirms `**Version:** 0.9.9` at line 6 (not line 7 as claimed — off by one). Last change record is 2026-05-18 (26 days stale).
|
||||
|
||||
### ✅ `docs/material3-guideline.md` ~line 4: Version 0.9.2
|
||||
**Verdict: Accurate.** File confirms `**Version:** 0.9.2` at line 4. Last change record is 2026-05-14 (30 days stale). The document notes Material 3 design may not have changed, which is fair.
|
||||
|
||||
**Summary:** All 3 stale version refs verified. Minor line-number error on srs.md (says line 7, actual line 6).
|
||||
|
||||
---
|
||||
|
||||
## 2. Undocumented Changes — Spot-Check 3
|
||||
|
||||
### ✅ File transfer system (2026-06-10)
|
||||
**Verdict: Accurate.**
|
||||
- Commit `aa796d7` confirms: `feat: file transfer system (avatar/icon download with cacache) (#40)`
|
||||
- `chanora_cache` crate exists at `crates/chanora_cache/`
|
||||
- `file_transfer.rs` exists at `core/chanora_core/src/file_transfer.rs`
|
||||
- Design docs exist: `docs/architecture/file-transfer-design.md`, `file-transfer-research.md`, `file-transfer-implementation-plan.md`
|
||||
- **CHANGELOG.md has no mention** of file transfer, cacache, or chanora_cache. Confirmed undocumented in CHANGELOG.
|
||||
- **README.md crate list** (lines 242-249) does not include `chanora_cache`. Confirmed undocumented in README.
|
||||
|
||||
### ✅ Poke notifications (2026-06-08)
|
||||
**Verdict: Accurate.**
|
||||
- Commits `3ef540a` through `b565663` confirm: poke notification service, settings dialog, preferences, l10n, bridge integration
|
||||
- `poke_limiter.rs` exists at `crates/chanora_protocol/src/poke_limiter.rs`
|
||||
- `poke_notification_service.dart` exists at `apps/chanora_flutter/lib/services/`
|
||||
- `poke_notification_settings.dart` exists at `apps/chanora_flutter/lib/widgets/`
|
||||
- **CHANGELOG.md has no mention** of poke notifications. Confirmed undocumented in CHANGELOG.
|
||||
|
||||
### ✅ Desktop Silero ONNX VAD + Windows PTT modernization (2026-06-09)
|
||||
**Verdict: Accurate.**
|
||||
- Commit `2f6d45f` confirms: `feat(audio): desktop Silero ONNX VAD + Windows PTT modernization + MSVC CRT build fix (#37)`
|
||||
- `silero_onnx.rs` exists at `crates/chanora_audio/src/vad/silero_onnx.rs`
|
||||
- CHANGELOG mentions Apple CoreML Silero VAD and Linux ONNX Runtime VAD, but **not** the desktop Silero ONNX VAD or Windows PTT modernization from this commit. Confirmed undocumented in CHANGELOG.
|
||||
|
||||
**Summary:** All 3 undocumented changes verified. The CHANGELOG is missing these entries.
|
||||
|
||||
---
|
||||
|
||||
## 3. "12 Outdated Docs" Claim — Spot-Check 3
|
||||
|
||||
### ✅ `docs/architecture/sad.md` (dated 2026-05-29)
|
||||
**Verdict: Confirmed outdated.**
|
||||
- Component architecture table (lines 39-52) lists 12 components but **does not include `chanora_cache`**.
|
||||
- No mention of file transfer architecture, poke notification architecture, or the new desktop Silero ONNX VAD.
|
||||
- SAD does mention `chanora_resolver` and `chanora_prefetch` (lines 51-52), so the resolver/prefetch are current — but `chanora_cache` is a clear omission.
|
||||
|
||||
### ✅ `docs/architecture/sdd.md` (dated 2026-05-29)
|
||||
**Verdict: Confirmed outdated.**
|
||||
- Module catalogue (lines 15-31) lists 15 modules (SDD-MOD-001 through SDD-MOD-015).
|
||||
- **No module for file transfer** (should be ~SDD-MOD-016).
|
||||
- **No module for poke notifications** (should be ~SDD-MOD-017).
|
||||
- **No module for `chanora_cache`** (should be covered by file transfer module or standalone).
|
||||
- **No module for `poke_limiter`**.
|
||||
|
||||
### ✅ `docs/governance/document-index.md` (dated 2026-05-29)
|
||||
**Verdict: Confirmed outdated.**
|
||||
- Does not list `docs/architecture/file-transfer-design.md`
|
||||
- Does not list `docs/architecture/file-transfer-research.md`
|
||||
- Does not list `docs/architecture/file-transfer-implementation-plan.md`
|
||||
- Does not list `docs/superpowers/specs/2026-06-09-poke-without-message-design.md`
|
||||
- Does not list `docs/security/license-inventory.md`
|
||||
- **Does list** `docs/governance/maintainability-review-2026-06-08.md` (line 29) — see error #2 below.
|
||||
|
||||
**Summary:** All 3 spot-checked docs confirmed outdated. The "12 outdated docs" claim is plausible.
|
||||
|
||||
---
|
||||
|
||||
## 4. Were Any Outdated Docs Missed?
|
||||
|
||||
### Potentially missed:
|
||||
1. **`docs/release/dv-waiver-register.md`** — References `docs/implementation-status-2026-05-28.md` (line 17) and notes that iOS `AVAudioSession.Mode.voiceChat` status needs updated validation. This doc itself may need updating now that voiceChat is implemented (commit `89bbfa1`).
|
||||
|
||||
2. **`docs/governance/decision-impact-assessment.md`** — References VAD platform scope. May need updating for desktop Silero ONNX VAD enablement.
|
||||
|
||||
3. **`docs/security/license-inventory.md`** — The document itself notes it was refreshed 2026-06-09 (commit `b841d3f`), but the analysis flags it may be missing `cacache` dependency. The `cacache` crate IS in `Cargo.lock` (confirmed), so if the refresh was done against the current lock file, it should be covered. This needs manual verification but is not clearly outdated.
|
||||
|
||||
4. **`docs/governance/maintainability-review-2026-06-08.md`** — Already listed in document-index, but its content may be missing references to file transfer and poke notification features added after its date.
|
||||
|
||||
### Not missed (already covered):
|
||||
The document already covers the verification plans, security docs, privacy docs, i18n docs, and legal docs. These are all confirmed outdated (grep found no file transfer or poke mentions in any of them).
|
||||
|
||||
---
|
||||
|
||||
## 5. Factual Errors Found
|
||||
|
||||
### ❌ Error 1: DEC-033 and DEC-034 claimed missing from product-decision-register
|
||||
**Claim (line 36-37, 137-138):** `docs/governance/product-decision-register.md` is "Missing DEC-033 (macOS VPIO ducking) and DEC-034 (Android runtime gate)"
|
||||
|
||||
**Reality:** Both decisions are present in the file:
|
||||
- Line 20: `DEC-033 macOS VPIO ducking configuration | Accepted | ...`
|
||||
- Line 21: `DEC-034 Android runtime verification gate | Active tracking | ...`
|
||||
|
||||
**Impact:** This error undermines the "Critical" recommendation #2 to update the product-decision-register. The register already contains these decisions.
|
||||
|
||||
### ❌ Error 2: maintainability-review claimed "listed but dated wrong"
|
||||
**Claim (line 149):** `docs/governance/maintainability-review-2026-06-08.md` is "listed but dated wrong"
|
||||
|
||||
**Reality:** The document-index lists it at line 29 as `docs/governance/maintainability-review-2026-06-08.md` with status "Working-branch maintainability and fail-safe review". The filename contains the date 2026-06-08, which matches the document's actual date. There is no dating error.
|
||||
|
||||
**Impact:** Minor. The document may still be outdated (missing file transfer/poke content), but the specific "dated wrong" claim is incorrect.
|
||||
|
||||
---
|
||||
|
||||
## 6. Minor Issues
|
||||
|
||||
1. **Line number off-by-one:** `docs/srs.md` version is at line 6, not line 7 as claimed.
|
||||
2. **SAD component table scope:** The SAD does list `chanora_resolver` and `chanora_prefetch` (lines 51-52), which means only `chanora_cache` is missing from the component table — not "Missing `chanora_cache` component" as a standalone issue. The SAD also mentions VAD (line 126, 162), so the "Missing desktop VAD architecture" claim needs nuance — VAD is mentioned but the specific desktop Silero ONNX VAD implementation is not.
|
||||
3. **Feature drift section accuracy:** The "Documented but No Longer in Code" section correctly identifies `SonoraExperimental` removal (commit `2b28549`) and `ios_raw_unit.rs` removal (commit `3f9ea4f`). The `SnapshotChanged` and timer-based polling claims are supported by CHANGELOG v0.3.0 entries.
|
||||
|
||||
---
|
||||
|
||||
## Summary Table
|
||||
|
||||
| Check | Result |
|
||||
|-------|--------|
|
||||
| Stale version refs (3 checked) | ✅ All 3 accurate (1 minor line-number error) |
|
||||
| Undocumented changes (3 checked) | ✅ All 3 accurate |
|
||||
| "12 outdated docs" (3 spot-checked) | ✅ All 3 confirmed outdated |
|
||||
| Missed outdated docs | 2-3 additional docs may be outdated |
|
||||
| Factual errors | ❌ 2 errors found (DEC-033/034 claim, maintainability-review date claim) |
|
||||
|
||||
**Recommendation:** Correct the 2 factual errors before using this document for DV planning. The core analysis is sound.
|
||||
Reference in New Issue
Block a user