Skip to content

docs deploy: Vercel's dashboard Ignored Build Step skips dependency-only changes — the merged OOM fix (#12684) has never been built in production; one dashboard visit: Redeploy + fix the ignore rule #12698

Description

@os-zhuang

Found at the 2026-08-27 10:29Z verification of the #12677 fix. Maintainer-only: both actions are Vercel dashboard settings; nothing in-repo can perform or fix this (apps/docs/vercel.json carries installCommand/buildCommand but no ignoreCommand — verified on current main).

Measured

  • PR fix(spec): bound the DTS pass's heap ceiling to the build container's memory #12684 merged to main at 09:56Z (merge commit 0d4a6a85). At 10:29Z production still serves data-dpl-id="dpl_2nfWjGjSwZjakVEmUG1kBWD6697r" (age ≈41.5 h) — the pinned pre-outage build.
  • The mechanism, read from the commit status Vercel posted on PR fix(spec): bound the DTS pass's heap ceiling to the build container's memory #12684's head (a0a64684), verbatim: Vercel — Canceled by Ignored Build Step (08:14:19Z). That PR's diff is packages/spec build config + a changeset — a change to the docs site's own dependency graph (@objectstack/spec is @objectstack/docs's only workspace dependency), and the ignore step canceled its build anyway.
  • Since the fix merged, main has received only 0d4a6a85 (packages/spec + changeset) and 284fc22d (.claude/** only). Neither touches apps/docs/** or content/docs/** — so under a path-scoped ignore rule, no production build has run since the fix landed. The dpl-id not moving is fully explained; there is no evidence of a new build failure.

Why the ignore rule is itself a defect for this monorepo

The docs build is turbo run build --filter=@objectstack/docs — its output depends on everything in that turbo graph, not only on files under apps/docs/content/docs. A path-scoped ignore rule therefore skips exactly the class of commit that fixes a broken build in a dependency (this one), and will also serve stale pages whenever a dependency change alters generated content. It also interacts badly with the outage class #12333 measured: a two-day-invisible failure, now followed by an invisible non-build.

Maintainer actions (one dashboard visit)

  1. Redeploy now: docs project → Deployments → Redeploy from latest main (0d4a6a85 or newer), build cache off. ~5–10 min later the re-check below must move off dpl_2nfW… — that is the real end of the docs site: production has not deployed since dpl_2nfW… — 19 merges to main, five epic PRs invisible #12333/docs deploy: Vercel production build OOM-killed — @objectstack/spec:build exits 137, every production deploy since 2026-08-25 ~16:55 fails (root cause behind #12333) #12677 outage, and epic epic(docs-site): the site is technically un-indexable — fix robots/sitemap/canonical/OG first, then the keyword shape #12243's site verification resumes.
  2. Fix the Ignored Build Step: replace the path rule with the turbo-aware form — npx turbo-ignore @objectstack/docs — so any commit that changes the docs app's dependency graph builds, and everything else is still skipped. (Minimum fallback: add packages/** to the watched paths, at the cost of some spurious builds.)
  3. Optional but same visit: docs build: next build holds ~7.6 GB in ONE process — the docs deploy's next memory ceiling, and no in-repo knob bounds it #12683's option A (build machine memory) if ruled A.

Re-check

curl -s https://objectstack.ai/ | grep -o 'data-dpl-id="[^"]*"'

Any id other than dpl_2nfWjGjSwZjakVEmUG1kBWD6697r closes this card.

Refs: #12677 (fix, merged as PR #12684) · #12333 (original measurement) · #12683 (memory-margin decision card) · epic #12243.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions