Skip to content

fix(cli): sync cli/assets with src/ui-ux-pro-max source of truth#322

Open
alfredo-petri wants to merge 1 commit into
nextlevelbuilder:mainfrom
alfredo-petri:fix/sync-cli-assets
Open

fix(cli): sync cli/assets with src/ui-ux-pro-max source of truth#322
alfredo-petri wants to merge 1 commit into
nextlevelbuilder:mainfrom
alfredo-petri:fix/sync-cli-assets

Conversation

@alfredo-petri

Copy link
Copy Markdown
Contributor

Problem

cli/assets/ was divergent from src/ui-ux-pro-max/ (the documented source of truth per CLAUDE.md). Users installing via npm received outdated data:

  • scripts/core.py: only 3 stacks instead of 16
  • scripts/search.py: stale domain/stack documentation
  • 12 stack CSVs out of date
  • 18 platform JSON templates with wrong stack counts/descriptions
  • Several data CSVs divergent (app-interface, colors, icons, landing, products)

Root cause: The sync step (cp -r src/ui-ux-pro-max/...) is documented in CLAUDE.md but was never automated, so it drifts with every commit to src/.

Solution

  • Add cli/scripts/sync-assets.js — a zero-dependency Node.js script that copies src/ui-ux-pro-max/{data,scripts,templates}cli/assets/
  • Add sync-assets npm script for manual runs
  • Wire prepack and prepublishOnly to run sync automatically before every npm pack / npm publish
  • Run sync to fix current 33-file divergence

Verification

node cli/scripts/sync-assets.js
diff -rq src/ui-ux-pro-max/data cli/assets/data      # empty
diff -rq src/ui-ux-pro-max/scripts cli/assets/scripts  # empty
diff -rq src/ui-ux-pro-max/templates cli/assets/templates # empty

🤖 Generated with Claude Code

33 files were divergent between src/ui-ux-pro-max/ and cli/assets/,
causing users who install via npm to receive outdated data: scripts
with 3 stacks instead of 16, stale CSVs, and outdated platform templates.

- Add cli/scripts/sync-assets.js to automate the sync
- Add sync-assets npm script for manual runs
- Replace prepublishOnly + add prepack to run sync before every pack/publish
- Run sync to fix current divergences in data/, scripts/, templates/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mrgoonie

Copy link
Copy Markdown
Contributor

Summary: I’m deferring this PR from the cron-safe maintainer lane because it is a broad asset-sync packaging change and overlaps several active packaging PRs.

Decision: deferred / needs reconciliation

Evidence:

Next step: please reconcile this PR with the other asset-sync PRs and make the acceptance path explicit: one chosen source-of-truth sync script, expected line-ending behavior, exact validation commands, and whether this supersedes #330/#336/#340/#355/#368. After that, a focused maintainer review can compare one packaging approach instead of reviewing parallel implementations.

@mrgoonie mrgoonie added agent:github-maintain Processed by github-maintain automation maintain:deferred Deferred by maintain workflow pr:oversized Too large for cron-safe review budget labels Jun 21, 2026
@ia-abatista

Copy link
Copy Markdown
Contributor

Recommend closing, @mrgoonie. A manual cli/assets re-sync, superseded by merged #355 which makes the src to cli/assets sync deterministic and enforced.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent:github-maintain Processed by github-maintain automation maintain:deferred Deferred by maintain workflow pr:oversized Too large for cron-safe review budget

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants