Skip to content

chore: gate Vercel deployments to docs-only changes#462

Closed
BornPsych wants to merge 2 commits into
mainfrom
ys/vercel-deployment-gate
Closed

chore: gate Vercel deployments to docs-only changes#462
BornPsych wants to merge 2 commits into
mainfrom
ys/vercel-deployment-gate

Conversation

@BornPsych

@BornPsych BornPsych commented Jun 26, 2026

Copy link
Copy Markdown
Collaborator

Problem

Vercel fires on every PR and push regardless of whether docs/ changed. On non-docs PRs produces a spurious Vercel: FAILURE status check — confusing reviewers and wasting build minutes on commits that have nothing to do with the docs site.

Solution

Two inert files — no vercel.json, no jobs, no secrets needed:

  • .vercelignore — ignore everything except docs/**
  • .github/workflows/docs-gate.yml — path-filter workflow; GitHub
    only dispatches the Vercel webhook when docs/** files change

The workflow has no jobs; it exists purely as a filter gate.

Vercel was triggering on every PR and push including Rust-only changes,
producing spurious status-check failures on non-docs PRs.

- .vercelignore: ignore everything except docs/**
- docs-gate.yml: path-filter workflow; GitHub only dispatches the Vercel
  webhook when docs/** files changed — no webhook, no build
@vercel

vercel Bot commented Jun 26, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs-provekit-org Error Error Jun 26, 2026 10:20am

Request Review

Workflow was failing because it had no jobs section. GitHub requires
at least one job in every workflow file.

Added a simple gate job that just echoes confirmation. The workflow
still serves as a path filter to Vercel via GitHub's webhook system.
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

CSP benchmarks

Metric Value
Workflow status [PASS] success
Commit 3188b66d602c
Run #28232009830
Circuits benchmarked 21
Iterations averaged per circuit 3

Prover time, peak RSS, peak heap, and verifier time are arithmetic means across the iterations. Peak heap comes from the largest peak memory entry in provekit-cli prove's tracing output; peak RSS is reported by /usr/bin/time -v (max-resident-set-size).

Each metric cell shows the current value followed by the percentage delta against the latest successful main run #27856904893. (new) marks circuits absent from the baseline.

Results
Circuit Constraints Witnesses Prover time Peak RSS Peak heap Verifier time Proof size PKP size
ecdsa_p256 143,282 (±0.0%) 258,158 (±0.0%) 2.98 s (-0.3%) 257 MB (±0.0%) 225 MB (-0.1%) 350 ms (+2.0%) 2.83 MB (+1.5%) 807 KB (±0.0%)
keccak_1024 822,870 (±0.0%) 1,543,366 (±0.0%) 6.35 s (+0.1%) 986 MB (±0.0%) 953 MB (±0.0%) 847 ms (-0.4%) 3.13 MB (-0.1%) 6.10 MB (±0.0%)
keccak_128 163,058 (±0.0%) 313,707 (±0.0%) 2.11 s (-0.3%) 274 MB (-0.9%) 242 MB (-0.1%) 360 ms (-2.7%) 2.80 MB (+0.4%) 1.22 MB (±0.0%)
keccak_2048 1,575,606 (±0.0%) 2,945,822 (±0.0%) 11.86 s (+0.7%) 1.81 GB (±0.0%) 1.80 GB (±0.0%) 1.47 s (+2.6%) 3.26 MB (±0.0%) 12.14 MB (±0.0%)
keccak_256 256,206 (±0.0%) 487,012 (±0.0%) 2.31 s (+0.3%) 328 MB (±0.0%) 290 MB (±0.0%) 410 ms (±0.0%) 2.84 MB (-0.9%) 1.97 MB (±0.0%)
keccak_512 445,094 (±0.0%) 839,130 (±0.0%) 3.64 s (+0.4%) 594 MB (±0.0%) 509 MB (-0.1%) 553 ms (+1.2%) 2.99 MB (-1.6%) 3.39 MB (±0.0%)
poseidon2_12 479 (±0.0%) 563 (±0.0%) 350 ms (±0.0%) 24.32 MB (-0.8%) 14.69 MB (±0.0%) 100 ms (±0.0%) 1.04 MB (-1.0%) 437 KB (±0.0%)
poseidon2_16 556 (±0.0%) 719 (±0.0%) 350 ms (-2.8%) 24.75 MB (+0.1%) 14.88 MB (±0.0%) 100 ms (-11.7%) 1.01 MB (-3.8%) 530 KB (±0.0%)
poseidon2_2 231 (±0.0%) 278 (±0.0%) 340 ms (-2.9%) 23.66 MB (+0.2%) 14.11 MB (±0.0%) 100 ms (±0.0%) 1.05 MB (+5.0%) 108 KB (±0.0%)
poseidon2_4 529 (±0.0%) 535 (±0.0%) 343 ms (±0.0%) 23.96 MB (-0.4%) 14.31 MB (±0.0%) 100 ms (±0.0%) 1.05 MB (-0.1%) 31.67 KB (±0.0%)
poseidon2_8 363 (±0.0%) 423 (±0.0%) 353 ms (±0.0%) 24.61 MB (-0.4%) 14.50 MB (±0.0%) 100 ms (±0.0%) 1.04 MB (+1.9%) 365 KB (±0.0%)
poseidon_12 504 (±0.0%) 524 (±0.0%) 353 ms (±0.0%) 24.87 MB (+0.3%) 14.69 MB (±0.0%) 100 ms (±0.0%) 1.02 MB (+2.9%) 409 KB (±0.0%)
poseidon_16 609 (±0.0%) 633 (±0.0%) 350 ms (-0.9%) 24.77 MB (-0.3%) 14.97 MB (±0.0%) 110 ms (+6.5%) 1.03 MB (-2.5%) 537 KB (±0.0%)
poseidon_2 240 (±0.0%) 249 (±0.0%) 340 ms (-1.9%) 23.55 MB (+0.6%) 14.02 MB (±0.0%) 100 ms (±0.0%) 1.02 MB (-0.2%) 53.78 KB (±0.0%)
poseidon_4 297 (±0.0%) 309 (±0.0%) 350 ms (+1.0%) 24.02 MB (±0.0%) 14.31 MB (±0.0%) 100 ms (-3.2%) 1.05 MB (+2.2%) 210 KB (±0.0%)
poseidon_8 402 (±0.0%) 418 (±0.0%) 353 ms (+0.9%) 23.96 MB (-0.2%) 14.50 MB (±0.0%) 100 ms (±0.0%) 1.04 MB (+3.4%) 305 KB (±0.0%)
sha256_1024 196,940 (±0.0%) 339,764 (±0.0%) 2.21 s (+0.6%) 309 MB (+1.1%) 273 MB (±0.0%) 413 ms (-0.8%) 2.83 MB (+0.1%) 1.90 MB (+0.6%)
sha256_128 46,398 (±0.0%) 80,974 (±0.0%) 1.09 s (-0.3%) 100 MB (+0.1%) 83.48 MB (-0.1%) 260 ms (±0.0%) 2.51 MB (-0.9%) 506 KB (-0.5%)
sha256_2048 345,399 (±0.0%) 612,724 (±0.0%) 3.60 s (+0.7%) 551 MB (+0.6%) 483 MB (-0.1%) 597 ms (±0.0%) 2.98 MB (+0.1%) 3.04 MB (-3.1%)
sha256_256 67,904 (±0.0%) 117,944 (±0.0%) 1.38 s (+0.2%) 150 MB (±0.0%) 131 MB (+0.7%) 297 ms (+2.3%) 2.63 MB (-0.6%) 713 KB (+0.2%)
sha256_512 110,916 (±0.0%) 191,884 (±0.0%) 1.51 s (-0.2%) 182 MB (+0.5%) 158 MB (+0.2%) 327 ms (+2.1%) 2.66 MB (±0.0%) 1.12 MB (+0.1%)

@BornPsych

Copy link
Copy Markdown
Collaborator Author

Closing this — after investigation, the deploy-on-every-PR behavior is a Vercel project setting (dashboard) and cannot be controlled from repo files: GitHub Actions paths: filters do not gate the Vercel GitHub App, and a root .vercelignore either no-ops or breaks the docs build (Root Directory is docs/). Tracking the real fix — a Vercel "Ignored Build Step" — in #463.

@BornPsych BornPsych closed this Jun 26, 2026
@BornPsych BornPsych deleted the ys/vercel-deployment-gate branch June 26, 2026 10:40
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