Goal
The rows endpoint formats every field on every row, even when a view only shows a subset. Let callers ask for the fields they need so the server work tracks what gets rendered.
Scope
- Add
?fields[]=title&fields[]=field-123 to /cortext/v1/rows. If omitted, keep formatting everything.
format_row honors the requested list. System fields (title, created_at, modified_at, created_by, modified_by) are always included.
- When a rollup field is requested, resolve its source field server-side without returning that source field.
- The DataView block sends its visible columns and the dependencies needed by visible rollups.
Depends on
Acceptance criteria
- A response with
fields[] returns only those fields plus the always-included system fields.
- The rollup-heavy benchmark gets noticeably faster, targeting about 3x for a 10-of-30 view.
- Callers that omit
fields[] keep working unchanged.
Goal
The rows endpoint formats every field on every row, even when a view only shows a subset. Let callers ask for the fields they need so the server work tracks what gets rendered.
Scope
?fields[]=title&fields[]=field-123to/cortext/v1/rows. If omitted, keep formatting everything.format_rowhonors the requested list. System fields (title,created_at,modified_at,created_by,modified_by) are always included.Depends on
Acceptance criteria
fields[]returns only those fields plus the always-included system fields.fields[]keep working unchanged.