Skip to content

[codex] Fix Batch Crop filePanel id crash#26

Merged
Pluze merged 2 commits into
mainfrom
codex/issue25-filepanel-ids
Jun 29, 2026
Merged

[codex] Fix Batch Crop filePanel id crash#26
Pluze merged 2 commits into
mainfrom
codex/issue25-filepanel-ids

Conversation

@Pluze

@Pluze Pluze commented Jun 29, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes #25 by hardening the shared filePanel entry normalization used when apps programmatically refresh file lists.

Root cause

Batch Crop can load a folder scan into the file panel and then refresh the same list with app-owned status entries. The shared filePanel helper assumed incoming id, path, displayName, and status fields were scalar text. If an entry carried an empty or non-scalar field, assignFileIds evaluated a non-scalar short-circuit condition and raised MATLAB:nonLogicalConditional during selection refresh.

Changes

  • Normalize filePanel entry text fields to scalar strings before completing entries and assigning ids.
  • Regenerate empty or duplicate ids deterministically.
  • Add a UI GUI regression covering malformed file-entry ids/status values during labkit.ui.view.setValue.
  • Bump the labkit.ui facade version to 3.2.1.

Validation

  • git diff --check
  • /Applications/MATLAB_R2025a.app/bin/matlab -batch "buildtool changed" passed after sandbox launcher retry with escalated permissions.

Notes

Docs/AGENTS unchanged; public UI ownership and validation-routing contracts were preserved.

@Pluze Pluze marked this pull request as ready for review June 29, 2026 17:48
@Pluze Pluze merged commit f2189ae into main Jun 29, 2026
14 checks passed
@Pluze Pluze deleted the codex/issue25-filepanel-ids branch June 29, 2026 17:49
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.

[Bug]: batch crop cannot load folder file list and crashed

1 participant