Skip to content

Codex/maintainability audit 2026 09 06 - #17

Merged
frathe merged 9 commits into
mainfrom
codex/maintainability-audit-2026-09-06
Sep 8, 2026
Merged

Codex/maintainability audit 2026 09 06#17
frathe merged 9 commits into
mainfrom
codex/maintainability-audit-2026-09-06

Conversation

@frathe

@frathe frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner

What does this change do, and why?

Maintainability: safe inputs, correct file identity, and observable background work

How was this tested?

make test, tested manually on Linux ARM, MacOS M5, and Windows ARM.
Testings on x64 platforms are still outstanding.

Checklist

  • make fmt-check is clean, go vet ./... and go test -timeout 30m -race ./... pass
  • User-visible strings go through lang.L, with the key added to every
    bundle in translations/
  • internal/ui/help/manual.md and manual_de.md updated, if this
    changes documented behavior
  • ARCHITECTURE.md updated, if this changes the package structure
  • No new TODO/FIXME comments — open items go in todos.md instead

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 7, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-08T08:57:21.335731Z 6c35f38 New commits
🔒 Security Review Completed 2026-09-08T08:54:31.621136Z 6c35f38 New commits

Security findings

Advisory findings (1)

ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown

Qodana for Go

It seems all right 👌

No new problems were found according to the checks applied

💡 Qodana analysis was run in the pull request mode: only the changed files were checked
☁️ View the detailed Qodana report

Contact Qodana team

Contact us at qodana-support@jetbrains.com

@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: 2698317fff

ℹ️ 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 internal/ui/save.go Outdated
@frathe

frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Please review the current head, d6c892c. The finding in discussion_r3949609435 was valid and is fixed: a completed Save installs its committed frame as the baseline and rebases any later rotation, preserving the displayed pixels. Reset and later rotations now use the saved frame, and Save availability reflects only remaining edits.

The existing blocked-Save regression test now covers clockwise/counterclockwise changes, wrapping through zero, Reset during Save, and a full cycle. It failed on the original implementation and passes with the fix. The Save/rotation tests also pass with the race detector; formatting, exclusion checks and targeted vet pass. Full local verification is running, and CI is checking this head.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. What shall we delve into next?

Reviewed commit: d6c892c9e4

ℹ️ 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".

@frathe

frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Please review the latest head, 763e619. Your code review of d6c892c found no further issues, and the saved-rotation fix is unchanged.

Verification then reproduced a CI race in TestCopySelectionCancelsBeforeOtherCommands/sort: the test started a sort and reached cleanup before the sort/load completion. The test now waits for both completions. The same focused go test -race ... -count=20 command failed before this change and passed all 20 runs afterward.

The local concurrent Linux/amd64 emulated race run also exceeded several five-second test deadlines, causing secondary teardown races; the shared bounded deadline is now 30 seconds. Passing waits still complete immediately. These follow-up changes affect tests and verification notes only. Formatting and exclusion checks pass; full verification and CI are running again.

@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: 763e619619

ℹ️ 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 internal/ui/copyselection_lifecycle_test.go Outdated

@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 Security Review

Here are some automated security review suggestions for this pull request.

Reviewed commit: 763e619619

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Comment thread internal/imaging/mutations.go Outdated
@frathe

frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Addressed the valid cancellation-order finding: the sort case now checks Copy Selection immediately after the menu action and settles sort/load only in its registered cleanup, before viewer teardown. A temporary Go overlay disabling immediate cancellation makes the corrected test fail with Copy Selection stayed active after sort; the normal implementation passes 20 race-enabled runs.

Also fixed the CI grouping-test failure. The test now holds the independent grouping computation and waits for that worker, rather than parking/waiting for the unrelated thumbnail decode pool. It verifies computation completes before UI installation. The original test failed under repetition; the corrected version passes 20 race runs and fails when an overlay adds computation to the UI callback.

Related hash/grouping tests and the full command-cancellation matrix pass with -race; formatting, Qodana exclusions and focused vet pass. The prior local full gate's UI-3 termination was confirmed as Docker OOM by a matching container event, while all three hosted UI shards passed. This revision's complete hosted CI gate will provide the final full-suite result.

Please review the latest pushed head, including these test fixes and the earlier saved-rotation baseline fix.

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: 6274941c08

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@frathe

frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Fixed the valid export symlink security finding. Export resolves parent-directory aliases but refuses an existing or dangling destination leaf symlink. The leaf remains unresolved through the atomic rename, so a symlink introduced during encoding is replaced without writing to its target. Save Changes and metadata removal retain their existing source-symlink semantics.

The new regression case failed before the fix with Committed:true and changed bytes in an unrelated target. It now passes, alongside a late-symlink case, parent-alias transaction serialization, Save/Strip alias behavior, and UI refresh of an alias after export to its regular target. Updated the earlier plan and API documentation to reflect this correction.

Validation: full imaging race suite passed (18.420s); UI export/reconciliation race tests passed (62.599s); formatting, Qodana exclusions, and focused vet passed. Every hosted CI check passed on the preceding revision; the full gate will run again on this head.

Please review the latest pushed commit for both code and security findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: 9a7ac978f7

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@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: 9a7ac978f7

ℹ️ 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 internal/dupes/groups.go
@frathe

frathe commented Sep 7, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Fixed the valid duplicate-navigation finding. Every completed SetSortMode reorder now calls the grid's existing FilesChanged reconciliation before repaint: it adopts the new generation, retains URI-keyed facts and rebuilds groups asynchronously. Reconciliation also resumes missing hashes cancelled by a generation change, so sorting during cold hashing cannot leave extras visible indefinitely.

The extended navigation regression failed before the fix for unchanged and reversed ordering: Home/End, arrows, normal slideshow and shuffle could reach hidden extras. It now passes while keeping the displayed file and known native dimensions. A held-decode regression separately reproduced abandoned hashes after reorder, then passed 20 race-enabled runs with the fix.

Validation: full grid race suite passed (2.931s); UI sort/navigation/slideshow/cancellation tests passed (61.782s); formatting, Qodana exclusions and focused vet passed. The previous head passed all CI checks and its security review. Please review this latest pushed head for code and security findings; its complete CI gate is running.

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: 2ad8c19e91

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@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: 2ad8c19e91

ℹ️ 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 internal/ui/sort.go
Comment thread internal/ui/grid/selection.go Outdated
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: bc916fbf7c

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. What shall we delve into next?

Reviewed commit: bc916fbf7c

ℹ️ 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 scripts/storepublish/github.go Fixed
@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: d306654e49

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. More of your lovely PRs please.

Reviewed commit: d306654e49

ℹ️ 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".

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: d7d2f8e685

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@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: d7d2f8e685

ℹ️ 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 internal/ui/grid/dupes.go
Comment thread internal/ui/filework.go Outdated
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit: 61709e3b92

ℹ️ 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".

@chatgpt-codex-connector

Copy link
Copy Markdown

Security review completed. No security issues were found in this pull request.

Reviewed commit: 61709e3b92

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

docs: add architecture deepening review

docs: break maintainability spec into implementation tickets
Record package smoke results and deferred Windows tests

fix: restore progressive hiding and bound favorite prewarming

chore: stop tracking local scratch files

fix: rebase pending rotations after saving

test: settle sort commands before viewer cleanup

test: preserve cancellation assertions and await grouping

fix: refuse symlink destinations for image exports

fix: rebuild duplicate visibility after sorting

PR fixes
docs: retain only open refactoring work

docs: frame automatic Microsoft Store updates

docs: specify automatic Microsoft Store updates

Moved finished tasks

docs: add Microsoft Store automation tickets
moved done elements to archive folder
Require approval for each validated Microsoft Store rollout
Automate Microsoft Store update submissions
Require approval for each validated Microsoft Store rollout
fix: close release mutation and slideshow races and harden Store staging
fix(ui): preserve export previews and resume duplicate hashing
test: allow additional packages before make in coverage setup
@frathe
frathe force-pushed the codex/maintainability-audit-2026-09-06 branch from 61709e3 to 6c35f38 Compare September 8, 2026 08:43
@frathe
frathe merged commit a5b4c31 into main Sep 8, 2026
12 checks passed
@frathe
frathe deleted the codex/maintainability-audit-2026-09-06 branch September 8, 2026 08:53
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.

2 participants