What
content/docs/releases/v17.mdx:977 — the removed-features table's row for the retired fields[] object form { field, fields, alias } — prescribes, in its "Use instead" column:
expand, or a dotted path for a single related column (fields: ['owner.name'])
Half of that remedy now throws. A dotted fields entry is 400 INVALID_FIELD at the REST ingress since #7532 (PR #7588) and on direct engine.find / engine.findOne calls since #7589 (PR #8327, maintainer ruling in issue comment 5266074163 on the #7589 thread). An upgrader following this line lands in the exact refusal the remedy was supposed to route them around — the same dead-end shape #6924 removed from the sort axis' hint.
Verified on the #7589 branch tip (base 2efd2c9) by reading the file; the line is live.
The correction (for whoever owns it)
The "Use instead" cell should prescribe expand alone, keeping the reference column in the projection (fields: ['title', 'owner'] plus expand — the relation is carried by the column, and projecting it away leaves expansion nothing to resolve, per #7537). The dotted alternative should be dropped, not reworded.
Why this is a card and not part of PR #8327
content/docs/releases/ is release-owned and read-only in a code PR (AGENTS.md Documentation Guardrails; CLAUDE.md carries the same rule inline). The correction needs to land as a release-owned edit or a dedicated docs-only PR — never a rider on code changes. PR #8327 corrects the equivalent hand-written teaching at content/docs/protocol/objectql/types.mdx (in-scope, not release-owned) in the same change that adds the engine refusal.
Prior art: #7601 aligned the spec/docs dotted-fields prose with expand (landed as PR #7617), but this release-page line survived that sweep — it is the remaining prescription of the refused spelling in content/docs/.
Filed unassigned from the #7589 patch round; routing is the triage seat's call.
Generated by Claude Code
What
content/docs/releases/v17.mdx:977— the removed-features table's row for the retiredfields[]object form{ field, fields, alias }— prescribes, in its "Use instead" column:Half of that remedy now throws. A dotted
fieldsentry is400 INVALID_FIELDat the REST ingress since #7532 (PR #7588) and on directengine.find/engine.findOnecalls since #7589 (PR #8327, maintainer ruling in issue comment 5266074163 on the #7589 thread). An upgrader following this line lands in the exact refusal the remedy was supposed to route them around — the same dead-end shape #6924 removed from the sort axis' hint.Verified on the #7589 branch tip (base
2efd2c9) by reading the file; the line is live.The correction (for whoever owns it)
The "Use instead" cell should prescribe
expandalone, keeping the reference column in the projection (fields: ['title', 'owner']plusexpand— the relation is carried by the column, and projecting it away leaves expansion nothing to resolve, per #7537). The dotted alternative should be dropped, not reworded.Why this is a card and not part of PR #8327
content/docs/releases/is release-owned and read-only in a code PR (AGENTS.md Documentation Guardrails; CLAUDE.md carries the same rule inline). The correction needs to land as a release-owned edit or a dedicated docs-only PR — never a rider on code changes. PR #8327 corrects the equivalent hand-written teaching atcontent/docs/protocol/objectql/types.mdx(in-scope, not release-owned) in the same change that adds the engine refusal.Prior art: #7601 aligned the spec/docs dotted-
fieldsprose withexpand(landed as PR #7617), but this release-page line survived that sweep — it is the remaining prescription of the refused spelling incontent/docs/.Filed unassigned from the #7589 patch round; routing is the triage seat's call.
Generated by Claude Code