Repository navigation
Wesley QIR Phase C #665
Description
Activity
- addedlegend:PLATFORMPlatform/infrastructure workPlatform/infrastructure work
on Jun 1, 2026 🔗 Related PRs
flyingrobots/echo#329 - Stack Witness 0001 fixture-backed jedit walking skeleton [merged]
flyingrobots/echo#344 - feat(wesley): consume canonical requirements artifacts [merged]
flyingrobots/echo#365 - feat(wesley): emit query observer host helpers [merged]
flyingrobots/echo#385 - docs(backlog): two follow-ups from the 2026-05-30 merge session [merged]
flyingrobots/echo#388 - docs(method): add backlog cards and hook failure note [merged]
📝 Issue Planner
Check the box below or use the
@coderabbitai plancommand to generate an implementation plan and prompts that you can use with your favorite coding assistant.- Create Plan
🧪 Issue enrichment is currently in open beta.
You can configure auto-planning by selecting labels in the issue_enrichment configuration.
To disable automatic issue enrichment, add the following to your
.coderabbit.yaml:issue_enrichment: auto_enrich: enabled: false
💬 Have feedback or questions? Drop into our discord!
🔗 Related PRs
#42 - feat(qir): SQL lowering (MVP) with deterministic output and COALESCE for lists [merged]
#44 - feat(qir): ops emission (VIEW + SQL function returning jsonb rows) [merged]
#45 - docs(qir): document lowering + emission (MVP) [merged]
#324 - feat(security): InputValidator + StandardSanitizer + tests [merged]
#513 - expand parity fixture coverage [merged]
📝 Issue Planner
Check the box below or use the
@coderabbitai plancommand to generate an implementation plan and prompts that you can use with your favorite coding assistant.- Create Plan
🧪 Issue enrichment is currently in open beta.
You can configure auto-planning by selecting labels in the issue_enrichment configuration.
To disable automatic issue enrichment, add the following to your
.coderabbit.yaml:issue_enrichment: auto_enrich: enabled: false
💬 Have feedback or questions? Drop into our discord!
- addedtriage:requestsUnscheduled valid requests that still need a release scheduling decisionUnscheduled valid requests that still need a release scheduling decision
on Jul 5, 2026 Bookkeeping triage: restored the required scheduling-state label
triage:requests. This issue remains valid intake, but it is not selected for a named release lane yet.Roadmap reconsideration after the Rust-native reset:
Closing this as obsolete as written. It is a migrated Method backlog card for SQL-oriented QIR planning. The issue asks Wesley to compile GraphQL operations into executable SQL plan ASTs with table/column/relation mapping.
That conflicts with the current domain-empty boundary. Wesley may parse/lower operations and expose structural artifacts, but database/runtime semantics belong in owning targets such as
wesley-postgresor another external module. The generic Wesley side should stay focused on operation shape, IR, schema diff, external target protocols, and evidence artifacts.If there is still useful work here, it should be re-filed as either:
- a target-owned SQL planner issue in the owning database repo, or
- a narrow Wesley structural operation-analysis issue that does not encode database semantics.
Migrated from Method backlog
This issue was created from a legacy filesystem backlog card. GitHub Issues are now the live work tracker; repository docs remain Method evidence.
Source backlog:
docs/method/backlog/up-next/PLATFORM_wesley-qir-phase-c.mdOriginal lane:
up-nextOriginal legend:
PLATFORMOriginal backlog card
Wesley QIR Phase C
Wesley-repo work. Extend Wesley's Query IR to compile GraphQL operations into executable SQL query plan ASTs. This builds on the existing E0-E4 foundation.
T-2-1-1: GraphQL operation parser for QIR
User Story: As a Wesley user, I want to write GraphQL operations against my schema and have Wesley parse them into a typed QIR AST so that I can generate SQL query plans automatically.
Requirements:
.graphqlfiles or inline strings.Acceptance Criteria:
query { user(id: 1) { name email } }parses to a QIR node tree with resolved types.Definition of Done:
Scope: Repo: Wesley. New
qir/module with parser and AST types. Integration with existing type catalog.Out of Scope: SQL plan generation (T-2-1-2). Subscription semantics beyond parsing. Runtime execution.
Test Plan:
Blocked By: none
Blocking: T-2-1-2
Est. Hours: 6h
Expected Complexity: ~400 LoC
T-2-1-2: SQL query plan generation from QIR
User Story: As a Wesley user, I want QIR ASTs compiled into SQL query plan ASTs so that I can generate efficient database queries from my GraphQL schema.
Requirements:
Acceptance Criteria:
{ user(id: 1) { posts { title } } }produces a plan with SELECT + JOIN.Definition of Done:
Scope: Repo: Wesley.
qir/planner.tsmodule. JSON serialization of plan AST.Out of Scope: Actual SQL string rendering (target-specific). Query optimization. Subscription plans.
Test Plan:
Blocked By: T-2-1-1
Blocking: none
Est. Hours: 6h
Expected Complexity: ~450 LoC