This issue records a decision so it doesn't get lost. Don't start on it until a trigger below is met.
Decision (2026-10-26)
gql (Relay connections over page). Don't build it yet.
It has no consumer: Lark Relay uses Connect.
Bibleschool, the only gqlgen project, is staying on go-jet. It's swapping its infrastructure to corestack but not migrating its queries to Bob.
Bob codegen plugins. Don't build them until the adapter glue has been written by hand in at least two projects. A generator written before that would lock in a design nobody has used yet.
Triggers
Build gql when a project chooses gqlgen with Bob, for example if the Sightline SaaS layer goes that way, or if Bibleschool does write new feature areas in Bob. Build it alongside that first consumer, the same way connect (#10) is built with Lark Relay. It becomes a nested module (gql/v0.1.0).
Build codegen when two projects contain near-identical hand-written adapter code. Generate the boilerplate and keep the logic in the libraries.
Kickoff prompt (gql, once triggered)
Use the feature-delivery skill to add the gql nested module in corestack/go per
corestack/go#11. Repo ~/Projects/corestack/go, base main, branch feat/gql. Read AGENTS.md,
the module-boundary ADR and the page cursor ADR first. Map page.Page[T] to Relay
connections (edges, cursors, PageInfo, first/after/last/before) for gqlgen without
depending on any one schema. Shape it from this first consumer: <project and query>.
Nested module CI and release rules already exist from connect (#10); follow them.
Independent review before the PR.
This issue records a decision so it doesn't get lost. **Don't start on it** until a trigger below is met.
## Decision (2026-10-26)
- **`gql` (Relay connections over `page`).** Don't build it yet.
- It has no consumer: Lark Relay uses Connect.
- Bibleschool, the only gqlgen project, is staying on go-jet. It's swapping its infrastructure to corestack but not migrating its queries to Bob.
- **Bob codegen plugins.** Don't build them until the adapter glue has been written by hand in at least two projects. A generator written before that would lock in a design nobody has used yet.
## Triggers
- **Build `gql` when** a project chooses gqlgen with Bob, for example if the Sightline SaaS layer goes that way, or if Bibleschool does write new feature areas in Bob. Build it alongside that first consumer, the same way `connect` (#10) is built with Lark Relay. It becomes a nested module (`gql/v0.1.0`).
- **Build codegen when** two projects contain near-identical hand-written adapter code. Generate the boilerplate and keep the logic in the libraries.
<details>
<summary>Kickoff prompt (gql, once triggered)</summary>
```text
Use the feature-delivery skill to add the gql nested module in corestack/go per
corestack/go#11. Repo ~/Projects/corestack/go, base main, branch feat/gql. Read AGENTS.md,
the module-boundary ADR and the page cursor ADR first. Map page.Page[T] to Relay
connections (edges, cursors, PageInfo, first/after/last/before) for gqlgen without
depending on any one schema. Shape it from this first consumer: <project and query>.
Nested module CI and release rules already exist from connect (#10); follow them.
Independent review before the PR.
```
</details>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This issue records a decision so it doesn't get lost. Don't start on it until a trigger below is met.
Decision (2026-10-26)
gql(Relay connections overpage). Don't build it yet.Triggers
gqlwhen a project chooses gqlgen with Bob, for example if the Sightline SaaS layer goes that way, or if Bibleschool does write new feature areas in Bob. Build it alongside that first consumer, the same wayconnect(#10) is built with Lark Relay. It becomes a nested module (gql/v0.1.0).Kickoff prompt (gql, once triggered)