Skip to content

ci(manifest): add lint workflow; prune ancient Zsh 5.1.1/5.2.4#14

Merged
ss-o merged 2 commits into
mainfrom
feature-manifest-lint-prune
May 31, 2026
Merged

ci(manifest): add lint workflow; prune ancient Zsh 5.1.1/5.2.4#14
ss-o merged 2 commits into
mainfrom
feature-manifest-lint-prune

Conversation

@ss-o
Copy link
Copy Markdown
Member

@ss-o ss-o commented May 31, 2026

Salvages the still-relevant parts of the stale feature-zsh13-manifest-dedup branch. The branch's /bin/zsh opt-in + manifest-dedup work was already merged (and hardened further) in d4e92dd ("Closes ZSH-13"), so only the genuinely-new pieces are brought forward here, rebuilt on top of current main:

1. Manifest lint workflow (ci(manifest))

  • Validates package.json parses and has the expected zsh-data structure.
  • Fails CI if package.json drifts from scripts/build-manifest.py output.
  • Action pinned to a full commit SHA per workspace policy.

2. Prune ancient Zsh versions (build(package))

  • Drop 5.1.1 and 5.2.4 from the generator's VERSIONS; regenerate package.json (default + 8 versions); trim matching README examples.

Verified locally: all three workflow steps pass, package.json is stable on re-run, valid JSON, and the safer /bin/zsh install guards from main (!= 1 + refuse-clobber /bin/zsh.bkp) are preserved — no safety regression.

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings May 31, 2026 17:11
Comment thread .github/workflows/manifest-lint.yml Fixed
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Salvages the still-relevant parts of a stale branch: adds a manifest lint workflow and removes obsolete Zsh 5.1.1 / 5.2.4 versions from the generator, manifest, and README.

Changes:

  • Drop 5.1.1 and 5.2.4 from VERSIONS in scripts/build-manifest.py and regenerate package.json.
  • Remove corresponding README pack examples.
  • Add .github/workflows/manifest-lint.yml that validates package.json JSON, zsh-data structure, and drift vs the generator.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
scripts/build-manifest.py Prune ancient 5.1.1 and 5.2.4 from VERSIONS
package.json Remove generated entries for the pruned versions
docs/README.md Remove zi pack"5.2.4" / "5.1.1" examples
.github/workflows/manifest-lint.yml New CI job: parse, structural checks, generator-drift check

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

ss-o added 2 commits May 31, 2026 19:05
Validate package.json parses, has the expected zsh-data structure, and is
up-to-date with scripts/build-manifest.py on pushes/PRs touching the manifest
or its generator. Declares least-privilege read-only permissions and pins the
checkout action to a full commit SHA per workspace policy.
Remove the two oldest selectable profiles from the generator's VERSIONS list,
regenerate package.json (default + 8 versions), and trim the matching README
install examples. The unpinned default and 5.3.1+ profiles are unaffected.
@ss-o ss-o force-pushed the feature-manifest-lint-prune branch from 2380fdd to 2f04dda Compare May 31, 2026 18:09
@ss-o ss-o merged commit a27c18a into main May 31, 2026
6 checks passed
@ss-o ss-o deleted the feature-manifest-lint-prune branch May 31, 2026 18:28
ss-o added a commit to z-shell/wiki that referenced this pull request May 31, 2026
The zsh package no longer ships 5.1.1 or 5.2.4 as selectable profiles
(z-shell/zsh#14). Remove the two stale 'zi pack' examples so the usage page
matches the available manifest profiles.
ss-o added a commit to z-shell/wiki that referenced this pull request Jun 1, 2026
* docs(zsh-lint): add generated-reference markers (#755)

docs(zsh-lint): add generated-reference markers and seed content

Re-add the {/* zsh-lint:generated:start/end */} markers to the Zsh Lint
ecosystem page so the wiki-docs-sync pipeline from z-shell/zsh-lint has a
region to inject into. Seed the region with the current generated Go
reference so the first automated sync is a no-op rather than a failure.

The marked region is machine-managed — do not hand-edit; it is regenerated
from the repo's Go doc comments.

Co-authored-by: Salvydas Lukosius <ss-o@users.noreply.github.com>

* docs(zsh-lint): sync generated reference (#756)

docs(zsh-lint): sync generated reference from zsh-lint

* ci(trunk): fix duplicate Trunk Check context blocking PRs (#759)

ci(trunk): rename workflow/job to Trunk Code Quality to fix duplicate check context

The workflow and job were both named 'Trunk Check', colliding with the check
that trunk-io/trunk-action posts (also 'Trunk Check'). Two identically-named
check-runs confuse strict branch protection (required context 'Trunk Check'),
leaving PRs stuck in BLOCKED even when all checks pass. Renaming to the
org-conventional 'Trunk Code Quality' (matching other repos) leaves the
action's 'Trunk Check' as the sole required context. Fixes #757.

Co-authored-by: Salvydas Lukosius <ss-o@users.noreply.github.com>

* docs(packages): drop removed Zsh 5.1.1/5.2.4 from version list

The zsh package no longer ships 5.1.1 or 5.2.4 as selectable profiles
(z-shell/zsh#14). Remove the two stale 'zi pack' examples so the usage page
matches the available manifest profiles.

* docs(zsh-lint): move tool documentation into community

* docs(zsh-lint): normalize generated reference indentation

* ci(workflows): enforce concurrency and permissions rules

* ci(workflows): enforce top-level policy blocks

---------

Co-authored-by: Salvydas Lukosius <ss-o@users.noreply.github.com>
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.

3 participants