mika kuns
49b9f1ffde
feat(roadblock): persist roadblock count on the task
2026-06-04 14:58:59 +02:00
mika kuns
9a117a5429
fix(prompts): apply system default on every run; dedupe roadblocks
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 14:25:55 +02:00
mika kuns
1e547dea18
feat(roadblock): surface reported roadblocks in the review result
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 14:18:51 +02:00
mika kuns
cf7f0da400
feat(roadblock): collect and strip CLAUDEDO_BLOCKED markers in StreamAnalyzer
2026-06-04 14:15:45 +02:00
mika kuns
79bfc79d33
feat(prompts): daily-prep prompt from file, English default
2026-06-04 14:11:30 +02:00
mika kuns
edc9f77357
feat(prompts): retry prompt from file, append only real captured errors
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 14:03:32 +02:00
mika kuns
9bdf99d95f
feat(prompts): externalize prompt kinds with defaults and token renderer
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 13:55:47 +02:00
mika kuns
925b72ae83
test(worker): cover max-turns in ConfigMcpTools round-trip
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-04 12:41:54 +02:00
mika kuns
92cee125cc
feat(ui): add inheritance resolver returning value and source
2026-06-04 12:28:12 +02:00
mika kuns
beae2d639d
feat(worker): resolve max-turns from task then list then global default
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 12:20:35 +02:00
mika kuns
ac137f7c1c
feat(data): persist max_turns in list and task repositories
...
Add MaxTurns to ListRepository.SetConfigAsync upsert branch and
TaskRepository.UpdateAgentSettingsAsync; fix positional CancellationToken
call in ConfigMcpTools. Covered by MaxTurnsRoundTripTests (2 tests).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 12:18:32 +02:00
mika kuns
2dfa9956c5
revert: drop real-claude smoke test; track as manual verification
...
A test that spawns the actual claude binary shouldn't live in the suite —
dotnet test must never invoke Claude. §1.0 step 3 stays a manual check.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-04 11:39:20 +02:00
mika kuns
773811d060
test(worker): add opt-in real-claude smoke test
...
Spawns the actual claude binary and asserts exit code 0, a session id,
non-empty result, and output tokens > 0 (plan-verification §1.0 step 3).
Inert unless CLAUDE_AUTHENTICATED=1, since it needs an authenticated CLI.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-04 11:36:51 +02:00
mika kuns
cc46019622
test(worker): cover External MCP worktree/git tools
...
Add error-path + git-backed happy-path tests for the five previously
untested ExternalMcpService tools: GetTaskWorktree, GetTaskDiff,
MergeTask (dry-run + not-Done guard), ListWorktrees, CleanupTaskWorktree.
Git-backed cases skip when git is unavailable.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-04 11:24:45 +02:00
mika kuns
71ac48162a
fix(worker): clean up orphaned worktree when the DB row insert fails
...
If WorktreeAddAsync succeeds but the worktrees-row insert throws, the
worktree was left on disk and branch undeleted with nothing tracking it.
Wrap the insert in try/catch and best-effort remove the worktree+branch
(non-cancellable) before rethrowing.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-04 11:21:40 +02:00
mika kuns
7d743f17c6
feat(daily-prep): trigger planning from inside the prep-log window with an empty-state hint
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 10:01:27 +02:00
mika kuns
914095dc99
feat(daily-prep): load persisted prep log into the terminal on open
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 09:44:38 +02:00
mika kuns
4d82079cac
feat(daily-prep): persist last prep run to a log file and serve it via GetLastPrepLog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 09:39:11 +02:00
mika kuns
c45f892591
feat(daily-prep): add Prep-log and Clear-day buttons to MyDay header
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 08:18:30 +02:00
mika kuns
a8670ee23a
feat(daily-prep): add live prep-output mode to the Details island
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 08:14:09 +02:00
mika kuns
7676ecf0d4
feat(daily-prep): expose prep stream events and ClearMyDay on the UI worker client
2026-06-04 08:09:41 +02:00
mika kuns
fa83d7f441
feat(daily-prep): add ClearMyDay hub method
2026-06-04 08:05:33 +02:00
mika kuns
e48475d6cd
feat(daily-prep): stream prep output via PrepStarted/PrepLine/PrepFinished
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-04 08:02:24 +02:00
mika kuns
2d00160283
feat(daily-prep): add RunDailyPrepNow hub method and expose DailyPrepMaxTasks
2026-06-03 16:30:23 +02:00
mika kuns
20b3a29d08
feat(daily-prep): run daily prep from PrimeRunner via allowed MCP tools
2026-06-03 16:24:09 +02:00
mika kuns
fd7f8ac78f
feat(daily-prep): add set_my_day MCP tool with cap-guard
2026-06-03 16:19:36 +02:00
mika kuns
0bb809445e
feat(daily-prep): add get_daily_prep_candidates MCP tool
2026-06-03 16:15:27 +02:00
mika kuns
3c66d65160
feat(daily-prep): add DailyPrepMaxTasks app setting
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-03 16:11:30 +02:00
mika kuns
350a89f364
feat(i18n): localize ViewModel-built strings via ambient Loc accessor
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-03 12:43:30 +02:00
mika kuns
070f5de1b1
feat(i18n): add language dropdown to settings and persist selection
2026-06-03 11:51:36 +02:00
mika kuns
6a85d82fcf
feat(i18n): add Language preference and Save() to AppSettings
2026-06-03 11:45:06 +02:00
mika kuns
35ad1715d3
feat(i18n): add Avalonia loc:Tr markup extension and LocalizedString
2026-06-03 11:44:16 +02:00
mika kuns
3c40bb5ea3
feat(i18n): seed en.json and wire locale copy to app output
2026-06-03 11:41:51 +02:00
mika kuns
d95d55e6b8
feat(i18n): add CultureResolver for OS-culture mapping
2026-06-03 11:39:20 +02:00
mika kuns
d22b50e171
feat(i18n): add Localizer with fallback chain and change event
2026-06-03 11:38:49 +02:00
mika kuns
a83a0c41e8
feat(i18n): add LocaleStore folder discovery
2026-06-03 11:38:02 +02:00
mika kuns
9efde2bf88
feat(i18n): add ClaudeDo.Localization project with nested-JSON locale parser
2026-06-03 11:35:59 +02:00
mika kuns
a935bf9664
i18n(ui): English UI labels for weekly report and notes (report body stays German)
2026-06-03 10:44:36 +02:00
mika kuns
a8d8a8bd65
fix(worker): sanitize report model arg, fix multi-repo summary attribution and standup-weekday sentinel
2026-06-03 10:22:06 +02:00
mika kuns
b886d58c07
test: update fakes for new IWorkerClient members and WorkerHub/DetailsIslandViewModel ctor args
2026-06-03 10:13:56 +02:00
mika kuns
c8b5ed3912
feat(ui): NotesEditorViewModel with day navigation and bullet CRUD
2026-06-03 10:01:17 +02:00
mika kuns
ccd2ee2cc7
feat(ui): WeeklyReportModalViewModel with default-range logic
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-03 09:54:10 +02:00
mika kuns
50d84f12c9
feat(worker): WeekReportService orchestrates generate + store
2026-06-03 09:42:21 +02:00
mika kuns
e2271b5a50
feat(worker): week report prompt builder (day-major pivot)
2026-06-03 09:40:57 +02:00
mika kuns
bec87b3d6f
feat(worker): ClaudeHistoryReader distills session logs
2026-06-03 09:37:40 +02:00
mika kuns
992fbf0763
feat(data): add WeekReportRepository with tests
2026-06-03 09:34:03 +02:00
mika kuns
1d7b86dbef
feat(data): add DailyNoteRepository with tests
2026-06-03 09:32:08 +02:00
mika kuns
37738e3c8f
feat(ui): drive prime schedule rows from weekday toggles
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-02 16:40:41 +02:00
mika kuns
81fd186fb2
feat(worker): map prime schedule weekday bitmask over the hub
2026-06-02 16:33:11 +02:00
mika kuns
3127930454
test(worker): adapt prime scheduler tests to weekday model
2026-06-02 16:33:02 +02:00