TryGhost
OSS
Ghost
Sign in / Sign up
Open main menu
Ghost
GitHub
Overview
Runs
Analytics
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
Succeeded
29134
08670eb0 Moved ghost/core boundary enforcement to dependency-cruiser no ref The frontend/server/shared boundaries were enforced by the custom `ghost/node/no-restricted-require` rule in ghost/core/eslint.config.mjs. That rule is specific to eslint-plugin-ghost and has no equivalent in oxlint, so it blocks the planned ESLint-to-oxlint migration. It also only inspects require() calls, missing ESM imports. The four boundary rules now run on dependency-cruiser, which enforces them on the resolved module graph (require and import) from the repo root. This drops the custom rule and lets the boundaries outlive ESLint. The original burn-down intent — "adding files to this list is an anti-pattern / work down until the list is empty" — and the per-file allowlist categorisation are carried over verbatim from the pre-flat- config .eslintrc.js, having been lost in the flat-config migration. Enforced in three places: a cached nx target on the ghost-monorepo root project (scoped inputs so the whole-repo projectRoot glob doesn't defeat caching), a CI step, and a lint-staged pre-commit signal. The cross-package apps/library model is deliberately out of scope and tabled as a follow-up.
by Hannah Wolfe
H
Previous page
Previous
Next
Next page