Conversation
|
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthroughThe OpenAPI freshness job is replaced by a Sequence Diagram(s)sequenceDiagram
participant CircleCI
participant RegistrySync as sync-registry-openapi
participant LiveRegistry as Live OpenAPI registry
participant TypeCheck as bun turbo types
CircleCI->>RegistrySync: run codegen:registry
RegistrySync->>LiveRegistry: fetch OpenAPI YAML
LiveRegistry-->>RegistrySync: return OpenAPI document
RegistrySync->>RegistrySync: validate and generate registry types
CircleCI->>TypeCheck: run monorepo type check
TypeCheck->>TypeCheck: check regenerated registry types
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Merge activity
|
…tibility` type-check job
b9a76f5 to
4b22182
Compare

Why
The previous
openapi-freshnessCI job checked whether the committed OpenAPI snapshot was recent enough (based on itsGenerated-Atheader age), but this didn't actually verify that the codebase compiles correctly against the live registry's current schema. A stale snapshot check is a weak proxy for real compatibility.Details
The
openapi-freshnessjob and its--check/--strictmodes have been replaced with aregistry-compatibilityjob that performs a live compatibility check:bun turbo typesacross the full monorepo to type-check against those freshly generated types.The job fails only when the live schema cannot be fetched, validated, or generated, or when a type check fails. Snapshot age and diffs against the committed generated files are explicitly not failure conditions — the regenerated output is discarded with the checkout, and the committed snapshot remains authoritative for deterministic offline builds.
The
--checkand--strictflags, theSTALENESS_THRESHOLD_DAYSenv var, and all associated staleness logic have been removed fromsync-registry-openapi.ts. The script now has a single mode: fetch, validate, write, and codegen.The job requires the
turbo-cachecontext (in addition togithub) since it runsbun turbo typesacross the monorepo. Resource class has been bumped fromsmalltomediumto accommodate the full type-check workload.Verification
CI on this branch runs the new
registry-compatibilityjob.Note
Low Risk
Changes are limited to CI wiring, docs, and dev-only registry sync tooling; no runtime auth or production code paths.
Overview
Replaces the
openapi-freshnessadvisory job withregistry-compatibility, which fetches the deployed registry OpenAPI spec, runsbun run --cwd packages/engine codegen:registry, thenbun turbo typeson the ephemeral checkout. The job fails only when the live schema cannot be fetched/validated/codegen’d or when types fail—not on snapshotGenerated-Atage or diffs vs committed generated files (those outputs are discarded; the committed snapshot stays the source of truth for offline builds).The new job uses
turbo-cacheplusgithub, andresource_class: medium(wassmall). CircleCI docs in.circleci/AGENTS.mdandpackages/engine/AGENTS.mddescribe the new behavior.sync-registry-openapi.tsis sync-only:--check/--strict,STALENESS_THRESHOLD_DAYS, and offline freshness logic are removed; entry is always fetch → validate → write snapshot →openapi-typescript.Reviewed by Cursor Bugbot for commit 4b22182. Bugbot is set up for automated code reviews on this repo. Configure here.
Summary by CodeRabbit
CI Improvements
Documentation