Skip to content

Implement custom file logger#315

Merged
aivanovski merged 4 commits into
masterfrom
feature/mask-credentials-in-logs
Feb 17, 2026
Merged

Implement custom file logger#315
aivanovski merged 4 commits into
masterfrom
feature/mask-credentials-in-logs

Conversation

@aivanovski

@aivanovski aivanovski commented Feb 17, 2026

Copy link
Copy Markdown
Owner

Note

Medium Risk
Touches logging and file I/O (including background coroutines and rotation), so regressions could impact log capture or file cleanup; changes are covered by new unit tests but still affect runtime diagnostics and storage.

Overview
Replaces the Treessence-based file logging with a custom Timber FileLoggerTree backed by FileLoggerImpl/FileSystemFacade, including async buffered writes, log rotation, and resource release after idle.

Updates LoggerInteractor to use the new logger, changes log file naming/pattern and increases max file size, and ensures file-logger trees are cleared on re-init and log file selection uses most-recently-modified.

Hardens logging privacy by masking secrets in FSCredentials.toString() (via new substituteAllExcept) and fixes the settings toggle to persist isFileLogEnabled before reinitializing logging. Adds coroutine test dependency and comprehensive unit tests for the new file logger, and updates the Gradle wrapper to 8.5 (plus regenerated gradlew).

Written by Cursor Bugbot for commit 588ec6c. This will update automatically on new commits. Configure here.

@aivanovski aivanovski force-pushed the feature/mask-credentials-in-logs branch from 99fc74f to 6430f83 Compare February 17, 2026 22:20

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 99fc74f14f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread app/src/main/kotlin/com/ivanovsky/passnotes/domain/logger/FileLoggerTree.kt Outdated
Comment thread app/src/main/kotlin/com/ivanovsky/passnotes/util/StringExt.kt Outdated

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 4 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

This PR is being reviewed by Cursor Bugbot

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

Comment thread app/src/main/kotlin/com/ivanovsky/passnotes/util/StringExt.kt Outdated
Comment thread app/build.gradle Outdated
Comment thread app/src/test/kotlin/com/ivanovsky/passnotes/domain/logger/MockFileSystemFacade.kt Outdated
@aivanovski aivanovski merged commit 545bd63 into master Feb 17, 2026
12 checks passed
@aivanovski aivanovski deleted the feature/mask-credentials-in-logs branch February 17, 2026 23:08
@aivanovski aivanovski added this to the 1.17.0 milestone May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant