Conversation
|
| data = try Data(contentsOf: url, options: .mappedIfSafe) | ||
| } catch { | ||
| throw SourceUnavailable.failed(.muse) |
There was a problem hiding this comment.
One unreadable log hides usage
If one retained session.jsonl is unreadable while others are readable, this catch fails the entire Muse scan instead of counting those sessions. The card shows a read error in place of available usage, and scheduled refreshes back off after the failure.
Prompt To Fix With AI
This is a comment left during a code review.
Path: Sources/MeterUsage/Services/MuseUsageSource.swift
Line: 35-37
Comment:
**One unreadable log hides usage**
If one retained `session.jsonl` is unreadable while others are readable, this catch fails the entire Muse scan instead of counting those sessions. The card shows a read error in place of available usage, and scheduled refreshes back off after the failure.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.| provider: .muse, | ||
| subtitle: "Local sessions and messages", | ||
| isOn: $showMuse, | ||
| menuBarIsOn: $menuBarMuse |
There was a problem hiding this comment.
Muse tray toggle has no effect
This menu-bar toggle defaults to on, but Muse has neither a quota window nor a service-status source. The tray draws only providers with a quota window or a degraded service status, so changing the toggle cannot make Muse appear there. That leaves users with a setting that appears to control a display it cannot change.
Prompt To Fix With AI
This is a comment left during a code review.
Path: Sources/MeterUsage/Views/SettingsView.swift
Line: 153
Comment:
**Muse tray toggle has no effect**
This menu-bar toggle defaults to on, but Muse has neither a quota window nor a service-status source. The tray draws only providers with a quota window or a degraded service status, so changing the toggle cannot make Muse appear there. That leaves users with a setting that appears to control a display it cannot change.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
|
|
||
| index = root / "docs/adr/README.md" | ||
| content = index.read_text(encoding="utf-8") | ||
| indexed = re.findall(r"^\| \[[^\]]+\]\(([^)]+\.md)\)", content, re.MULTILINE) |
There was a problem hiding this comment.
Wrong ADR numbers pass validation
The validator checks link targets but ignores the numbers displayed in index rows. A copied row such as [0008](0007-muse-local-history.md) passes --check even though ADR 0007 has no correctly numbered entry. The coverage check can therefore approve a misleading index.
Prompt To Fix With AI
This is a comment left during a code review.
Path: scripts/documentation.py
Line: 26
Comment:
**Wrong ADR numbers pass validation**
The validator checks link targets but ignores the numbers displayed in index rows. A copied row such as `[0008](0007-muse-local-history.md)` passes `--check` even though ADR 0007 has no correctly numbered entry. The coverage check can therefore approve a misleading index.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.| status = re.search(r"^- Status: (.+)$", text, re.MULTILINE) | ||
| label = status.group(1).replace("|", "\\|") if status else "See record" |
There was a problem hiding this comment.
Existing ADR statuses are missed
--write recognizes only bullet-style status lines. If it generates a missing row for ADR 0005 or 0006, whose status appears under a ## Status heading, it writes See record instead of the recorded status. The generated index then loses useful status information.
Prompt To Fix With AI
This is a comment left during a code review.
Path: scripts/documentation.py
Line: 40-41
Comment:
**Existing ADR statuses are missed**
`--write` recognizes only bullet-style status lines. If it generates a missing row for ADR 0005 or 0006, whose status appears under a `## Status` heading, it writes `See record` instead of the recorded status. The generated index then loses useful status information.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
Muse CLI users can enable a local usage card in Settings → Providers. The card counts retained native sessions and user/assistant messages without decoding content, reading credentials, spawning Muse, or sending requests. Quota, tokens, and cost remain unavailable; the existing quota-only JSON report has no Muse entry.
The reader handles Muse Code 1.4 native logs, duplicate sequence numbers, task events, malformed final lines, and local-day activity counts. Live and synthetic demo composition both include Muse. README, privacy documentation, KB, demo data, changelog, and ADR 0007 describe the same boundary. A minimal Python validator checks required documentation and ADR index coverage;
--writeadds missing rows while preserving existing descriptions.Validation on macOS arm64:
swift buildand 382 tests passed.swift build, all 391 tests,Scripts/make-app.sh, and strict ad-hoc signature verification passed.git diff --checkpassed.python3 scripts/documentation.py --writeand--checkpassed. Synthetic smoke checks verified failure on missing rows/records and empty documentation, plus recovery through--write.Model(s): gpt-6.1-sol (xhigh)
Harness: Codex in T3 Code