Replace symlinks with real files and add conversion script#368
Conversation
|
Summary: I’m deferring this in the cron-safe maintainer lane because the PR is too large for a bounded review pass. Decision: deferred Evidence:
Next step: please narrow this PR to either (1) the conversion script + documented generation process, or (2) the generated asset replacement, and explain how this should be reconciled with the current source-of-truth files and release workflow. A follow-up maintainer pass should compare this with the other CLI asset sync / symlink / release PRs before approving. |
mrgoonie
left a comment
There was a problem hiding this comment.
Summary: This PR addresses the real symlink-install problem by replacing .claude/skills/ui-ux-pro-max/data and scripts symlinks with real files, but it is not merge-ready in its current shape.
Mandatory gates:
- Duplicate/prior implementation: overlaps the same packaging/symlink problem tracked by PR #336 and issue #334/#362, but this PR targets the
.claude/skills/ui-ux-pro-maxsymlink copies specifically. - Project standards: source-of-truth should stay under
src/ui-ux-pro-max/; mirrored.claude/skills/...assets must be reproducible and kept in sync. - Strategic necessity: the goal is valid because ZIP/plugin installs can reject symlinks, but the implementation must not introduce stale generated copies or broken helper scripts.
Requested changes:
- Fix
scripts/convert_symlinks.sh:found=1is set inside a pipedwhilesubshell, so the finalif [ "$found" -eq 0 ]still sees0and printsNo symlinks found.even after replacements. Use process substitution or another no-subshell loop. - Do not add
.claude/skills/ui-ux-pro-max/data/_sync_all.pyas a generated one-off maintenance script inside the mirrored skill data directory. It embeds product-specific synchronization logic and should either live in a normal reposcripts/path with docs/tests or be omitted from the packaged mirror. - Add a reproducible validation path for the mirror: a command/test that confirms the repo/package contains no symlinks in installable plugin/skill artifacts and that mirrored files match the
src/ui-ux-pro-max/source-of-truth. - Reconcile this with the related packaging/symlink PRs so maintainers do not merge two competing mirror strategies.
Verdict: Request changes. The problem is worth fixing, but this PR currently adds a very large copied mirror plus a broken conversion script without enough reproducibility guarantees.
|
Cron maintainer follow-up: this PR is still mergeable and the review from 2026-06-24 requested specific changes that have not been addressed yet:
No new commits since the review (head: Posted by github-maintain cron at 2026-06-26T08:50:46Z |
No description provided.