Skip to content

feat(repo): client-side git guardrails (Husky.NET pre-push hook)#18

Merged
ChrisonSimtian merged 1 commit into
mainfrom
chore/git-guard-husky
Jun 29, 2026
Merged

feat(repo): client-side git guardrails (Husky.NET pre-push hook)#18
ChrisonSimtian merged 1 commit into
mainfrom
chore/git-guard-husky

Conversation

@ChrisonSimtian

Copy link
Copy Markdown
Collaborator

Replicates the pre-push guard from Chrison-dev/Homelab (PR #211). Blocks direct trunk pushes, force/non-ff pushes, and pushes onto an already-merged/closed branch. Bypass: git push --no-verify. Activate per clone: dotnet tool restore && dotnet husky install.

🤖 Generated with Claude Code

Portable pre-push guard replicated from Chrison-dev/Homelab: blocks direct
pushes to the trunk, force/non-fast-forward pushes, and pushes onto a branch
whose PR is already MERGED/CLOSED. Bypass: git push --no-verify.

Activate per clone: dotnet tool restore && dotnet husky install

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ChrisonSimtian
ChrisonSimtian merged commit a3bf0f3 into main Jun 29, 2026
1 check failed
@ChrisonSimtian
ChrisonSimtian deleted the chore/git-guard-husky branch June 29, 2026 01:34
ChrisonSimtian added a commit that referenced this pull request Jul 23, 2026
* build: Fallout CI + nuget.org Trusted Publishing (Chrison.* IDs)

Convert the build/CI to the Fallout pipeline and retarget publishing from
GitHub Packages to nuget.org via Trusted Publishing (OIDC, no stored key).

- build/: Fallout build project (Compile/Test/Pack/Publish targets) + build.sh/ps1
  + .fallout/ root marker; nuget.config gains the Fallout-build feed (Fallout.* only).
- Rename package IDs to the Chrison.* prefix (Chrison.ProxmoxSharp[.Api|.Cli]) —
  the bare ProxmoxSharp/UnifiSharp IDs are taken on nuget.org by unrelated projects.
  AssemblyName/RootNamespace stay ProxmoxSharp, so `using ProxmoxSharp;` is unchanged.
- ci.yml → build+test only; publish.yml → NuGet/login@v1 OIDC → dotnet push to
  nuget.org (prerelease on main, stable on v* tag).
- Fix CI regression: restore microsoft.openapi.kiota 1.31.1 to the tool manifest
  (dropped in #18), which broke the codegen step — CI red since 2026-06-29.
- README: Build/CLI/Packages sections updated for Fallout + Chrison.* on nuget.org.

Verified locally: ./build.sh Pack → 40 tests pass, emits Chrison.ProxmoxSharp*.nupkg.

Requires (repo/org setup): PACKAGES_PAT secret (read:packages on Fallout-build),
NUGET_USER secret (nuget.org profile), and a nuget.org Trusted Publishing policy
for this repo + publish.yml.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* ci(publish): run in the Nuget.org environment for Trusted Publishing

The nuget.org TP policy scopes to Environment=Nuget.org, so the publish job must
declare `environment: Nuget.org` — the OIDC token only carries the environment
claim when the job sets it, and the token exchange is rejected otherwise.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.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.

1 participant