Skip to content

chore(ci): add examples/codegen-integration package and clean up CI workflows#696

Merged
pyramation merged 17 commits intomainfrom
feat/examples-integration-and-ci-cleanup
Feb 9, 2026
Merged

chore(ci): add examples/codegen-integration package and clean up CI workflows#696
pyramation merged 17 commits intomainfrom
feat/examples-integration-and-ci-cleanup

Conversation

@pyramation
Copy link
Contributor

@pyramation pyramation commented Feb 8, 2026

chore(ci): add examples/codegen-integration package, clean up CI workflows

Summary

Introduces a private examples/codegen-integration workspace package that exercises the graphql codegen pipeline against the example schema — without any workflow hacks, build filter exclusions, or paths-ignore blocks.

What changed

  • New examples/codegen-integration — private package that calls generate() directly (no interactive CLI) against graphql/codegen/examples/example.schema.graphql, producing React Query hooks + ORM client output. Has no build script, so pnpm -r run build naturally skips it.
  • New examples-integration.yaml workflow — triggers on PRs touching examples/** or graphql/codegen/**; runs pnpm run build then test:codegen.
  • test-codegen-app buildbuild:app — the Vite test app's build requires generated code from a live API (gitignored src/generated/), so it can't participate in workspace-wide builds. Renamed so pnpm -r run build skips it cleanly instead of needing negated --filter exclusions.
  • pnpm-workspace.yaml — added examples/*
  • makage bumped to 0.1.12 across ~20 packages (inherited from prior PR chain; fixes ENOTEMPTY race condition in clean)

What was explicitly NOT changed (matching main)

  • run-tests.yaml build step remains pnpm run build — zero filter hacks
  • docker-launchql.yaml — no paths-ignore blocks added
  • Root package.json"build": "pnpm -r run build" — zero filter exclusions

Review & Testing Checklist for Human

  • Verify test-codegen-app buildbuild:app rename has no side effects — check that no other script, workflow, or Dockerfile references pnpm run build for this package. The analyze:visual script calls vite build directly, so it should be unaffected.
  • Review relative import in codegen-runner.ts — the runner imports generate() via ../../../graphql/codegen/src/core/generate. This is fragile if the package moves. Consider whether importing from the built package (@constructive-io/graphql-codegen) would be more robust.
  • Verify CLAUDE.md reformatting is intentional — large documentation restructuring is included but unrelated to CI cleanup. Consider splitting if not desired.

Suggested test plan:

  1. pnpm install && pnpm build at the repo root — should complete with no errors and no filter exclusions
  2. pnpm -r --filter @constructive-io/examples-codegen-integration run test:codegen — should generate code successfully against the fixture schema

Notes

The test:types script in the examples package will currently fail due to pre-existing type errors in the generated code. CI only runs test:codegen which verifies codegen generation succeeds.


Link to Devin run: https://app.devin.ai/sessions/a93d427c49214dce877d1fedee950c04
Requested by: @pyramation

yyyyaaa and others added 13 commits February 6, 2026 01:59
…copy patterns

- Convert queries.ts, mutations.ts, custom-queries.ts, custom-mutations.ts from lines.push() string concatenation to Babel AST generation
- Convert client.ts and selection.ts from string template literals to template-copy pattern
- Add hooks-ast.ts shared helper library for Babel AST node construction
- Add template files: hooks-client.ts, hooks-selection.ts
- Add AGENTS.md with codegen rules (AST-only, no string concat, templates as files)
- Update test snapshots for Babel formatting changes (whitespace/formatting only)
…-browser-compatible

- Add hyphenateKeys, flattenDbFields, buildDbConfig, seedArgvFromConfig,
  buildGenerateOptions to shared.ts as generic reusable utilities
- Replace manual cliOverrides/hasNonInteractiveArgs with prompt->camelize->generate flow
- Remove deprecated --browser-compatible flag from CLI, config types, and generate
- Simplify both CLI entry points (graphql/codegen/src/cli, packages/cli)
- Update test mocks to match new shared utility imports
- Remove all defaultSelect constants and overload 2 (without fields) from all hook generators
- Remove buildDefaultSelectExpr, buildSelectFallbackExpr, buildDefaultSelectLiteral, getDefaultSelectFieldName
- Remove withoutFieldsSelectionType, withoutFieldsListSelectionType, NON_SELECT_TYPES_AST
- Remove buildDefaultSelectExpression from ORM custom-ops-generator
- Remove defaultSelect/defaultRef from ORM model-generator
- Make selection with fields required in all hook and ORM method signatures
- Update 25 snapshots to reflect removed overloads
@devin-ai-integration
Copy link
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@pyramation pyramation merged commit fd0f8e2 into main Feb 9, 2026
53 checks passed
@pyramation pyramation deleted the feat/examples-integration-and-ci-cleanup branch February 9, 2026 05:52
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.

2 participants