Repository navigation
Conversation
One incompatible change to the GQ grammar, edition 3, after which every later capability is a registry row, a plan node behind existing syntax or the filling of a reserved slot. The RFC carries the freeze list (mutation keyword, arrow traversals, a retrieve clause binding score columns, generic calls over a function registry, the closed reserved set, limit as a parameter, generic annotations, and the reserved declaration kinds, blocks, clauses, meta-fields, catalogue names and namespaced type references), the rewriter that migrates edition-2 sources with an IR-equality proof, and the one-release window in which edition 2 is rewritten at boot instead of quarantined.
…-evaluation-5a029b # Conflicts: # docs/rfcs/README.md
…-evaluation-5a029b # Conflicts: # docs/rfcs/README.md
…hema queryable at any size
…e-spelling rule removes
|
Recommendation: revise. This RFC can own the order of GQ 3. The slot table and several verdicts do not match the grammar RFC, the open RFCs, or Lance 13.0.0. A stage RFC written from this map will claim a form another document already owns, or it will wait on the wrong enabler. WhyGQ has many open language and search drafts, and each one can schedule its own break. One order, one owner per reserved form, and one ruling per draft stop that. This document is that order. It is useful only while it matches the grammar RFC's freeze list and the texts it rules on. What this RFC decidesBreak once, in the grammar RFC (PR 1202). Then fill reserved forms in stages S, N, P, F, C, L, R, W1, W2, I + Poly, A, and Fed. The grammar RFC owns the break. Each stage RFC owns its semantics. This RFC owns the sequence, the owner of each slot, and the ruling on the other drafts. That split is the right one. A readable copy of the freeze list is the wrong way to keep it. The list already differs from the grammar RFC. What matches the code and the draftsThese claims match the documents I checked.
Blocking1. The slot table is not the grammar freeze list, and several forms have two owners
Rows that do match the freeze list, and should stay: The evidence section asks 2. The sequence does not encode the dependencies the prose and the RFCs already haveThe picture says the stages run in parallel except where an arrow says otherwise. The next sentences depend on C after S, L after F, W2 after W1, A after C, and Fed after Poly and C. Those edges are parentheses, not arrows. W2's edge from W1 is only in the prose. The user-behavior list then calls "F, then C, L, R, W1, W2" dependency order. C does not depend on F. The compatibility section says a stage can move without touching another stage, because the slots are independent. That sentence erases the edges above. These edges are wrong or missing against the drafts and the pinned substrate.
3. Stage S's search gate contradicts the accepted catalogue contractThe engine catalogue RFC says writes, loads, and text or rank search over catalogue types are refused, and catalogue access never calls Lance. Stage S's gate requires a GQT case that searches 4. Several verdicts do not match the open text or Lance 13.0.0
Optional
LiabilityThe observable contract here is the order and the owner of each form. Later stage RFCs are the mechanism. This file is the interface they share. Copying the freeze list makes one page easier to read. It spends the property the RFC exists to protect. The copy has already drifted, before any stage has shipped. Five stage RFCs written from it would add a grammar rule for The break-first order reduces liability. One spelling, one edition window, and slots that parse and refuse are a smaller surface than the additive-first plan in evaluation §11.1 to §11.5. That gain survives only if this document stops restating the list. No new runtime API, storage format, or deny-list mechanism is added. The maintenance cost is the table, the verdict rows, and the two tests. The tests are the part that keeps the cost from growing. Land the slot check with the table, or delete the restatement. How to reviseKeep the order as a list of edges. Make the picture, the user-behavior list, the rollout, and the compatibility section use those edges. Make the slot table a projection of the grammar freeze list, one owner per row. Add Name the distributed-sequence RFC on the storage clock. Say PR 805's ValidationHead reviewed: Scope is the diff against PR 1202's head GQT regression proof does not apply. This pull request changes documentation only. It changes no query result, error, or plan.
Limits: I did not re-run PR 792's Lance guards on 13.0.0. I did not re-read every accepted RFC named in the verdict table. I did not run the workspace test graph. The 37 of 45 figure is the grammar RFC's citation of RFC 0047. I did not re-run that instrument. Inline comments
|
Summary
Adds
docs/rfcs/2026-10-31-gq-3-programme.md(draft, maintainer track) and its registry row: the top-level document for the GQ revision. It owns an order and a map, no grammar and no semantics:Evidence is the committed evaluation (§10.7 verdicts, §11 staging), which this RFC links and whose header now names both RFCs.
Stacked on #1202. This branch includes the grammar RFC's commits; the diff shrinks to the programme RFC, the registry row and the evaluation's header once #1202 merges. Review the programme RFC file only.