Every action that takes place in the application should be recorded in the activity log, so the log is a complete audit trail of what happened in a session.
Ask
Audit every user-initiated and app-initiated action and ensure each writes an IActivityLog entry. Coverage should include, at minimum:
Connection/loading: token entered (never the value), org lookup started/finished/failed, load repos started/finished/failed. (load is partially logged today.)
Never log secrets — tokens must never appear (existing rule).
Keep entries human-readable and greppable; use Info for normal actions, Error for failures.
Business logic lives in gclo.ViewModels / gclo.Engine; the log is already injected there, so most additions are one-liners at the action sites. Add tests asserting key actions log (the log is an injectable seam).
Definition of done
A checklist of app actions, each mapped to a log call, reviewed so nothing user-visible happens silently.
Every action that takes place in the application should be recorded in the activity log, so the log is a complete audit trail of what happened in a session.
## Ask
Audit every user-initiated and app-initiated action and ensure each writes an `IActivityLog` entry. Coverage should include, at minimum:
- **Connection/loading:** token entered (never the value), org lookup started/finished/failed, load repos started/finished/failed. *(load is partially logged today.)*
- **Sync lifecycle:** already logged (start/summary/per-repo failure) — confirm parity.
- **Accounts:** account added, edited, deleted; Sync All start/finish and per-account queue transitions.
- **Path recovery:** resolve invoked, recovery applied/failed (partially logged).
- **Settings:** settings saved (which fields changed, never the token), default token stored/removed, theme change, splash setting change.
- **Updates:** check started, up-to-date / update-available (version), download+apply started, applied/failed.
- **Navigation/dialogs (lightweight):** opening the log viewer, About, wizard; folder opened; GitHub link opened.
- **App lifecycle:** startup (version + build hash), shutdown, unhandled-exception net (already logs).
## Constraints
- **Never log secrets** — tokens must never appear (existing rule).
- Keep entries human-readable and greppable; use Info for normal actions, Error for failures.
- Business logic lives in `gclo.ViewModels` / `gclo.Engine`; the log is already injected there, so most additions are one-liners at the action sites. Add tests asserting key actions log (the log is an injectable seam).
## Definition of done
A checklist of app actions, each mapped to a log call, reviewed so nothing user-visible happens silently.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Every action that takes place in the application should be recorded in the activity log, so the log is a complete audit trail of what happened in a session.
Ask
Audit every user-initiated and app-initiated action and ensure each writes an
IActivityLogentry. Coverage should include, at minimum:Constraints
gclo.ViewModels/gclo.Engine; the log is already injected there, so most additions are one-liners at the action sites. Add tests asserting key actions log (the log is an injectable seam).Definition of done
A checklist of app actions, each mapped to a log call, reviewed so nothing user-visible happens silently.
🤖 Generated with Claude Code