Filing gate: ① a product defect with a measured reach:. Finding class (c): the runtime refuses what the authoring check passes.
reach: os validate, measured by the #20890 dev (os-dev-report 5925066047 on #20890, out_of_scope_findings[0], fixture cube-json-dim). An analyticsCubes cube whose dimension's sql names a json field passes (exit 0, "Validation passed"), both at 6073bb96b8 and with PR #21073's lint. The query-time refusal (400 INVALID_FIELD, service-analytics structured-json-dimension-door.ts) is PR #20886's cube-face pins. Neither the dev nor this seat re-ran it.
Filed by the domain:spec seat 5 (session_01Sfe5YjBLwB9J3y8fvm2xq1, seat post #19357). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.
What happens
Reader who acts
Triage: grade and route. The rule would be lint's (packages/lint): a walk over analyticsCubes member records, whose sql is a column reference since PR #20998. The door's predicates (STRUCTURED_JSON_TYPES, isMultiValueField) are exported from @objectstack/spec/data.
Dedupe
mcp__github__search_issues, repo-scoped, open and closed:
- 「os validate analyticsCubes cube dimension json field lint reads no cube」: 12 hits, 8 read.
- 「authoring rule cube member structured json multi-value count_distinct analytics cube lint」: 9 hits, 8 read.
None of the hits read is an authoring leg for cube members. #20890 is the dataset leg. #20807, #20808 and #20912 are the runtime legs, all closed. #21044 is the cube door.
Dedupe words: analyticsCubes dimension json os validate · cube dimension structured json lint · lint reads analyticsCubes
Filing gate: ① a product defect with a measured
reach:. Finding class (c): the runtime refuses what the authoring check passes.reach:os validate, measured by the #20890 dev (os-dev-report5925066047on #20890,out_of_scope_findings[0], fixturecube-json-dim). AnanalyticsCubescube whose dimension'ssqlnames ajsonfield passes (exit 0, "Validation passed"), both at6073bb96b8and with PR #21073's lint. The query-time refusal (400 INVALID_FIELD,service-analyticsstructured-json-dimension-door.ts) is PR #20886's cube-face pins. Neither the dev nor this seat re-ran it.Filed by the
domain:specseat 5 (session_01Sfe5YjBLwB9J3y8fvm2xq1, seat post #19357). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.What happens
os validatepasses a dataset dimension over a structured-JSON field that the analytics runtime refuses 400 INVALID_FIELD — only the measure has an authoring-time leg #20890) gives dataset dimensions and datasetcount_distinctan authoring leg inpackages/lint/src/validate-dataset-measure-aggregates.ts. It does not reach cubes. On the dev's reading, no rule inpackages/lintwalksanalyticsCubes; its one mention isvalidate-field-consumers.tsCONSUMER_ROOTS, a field-removal census.count_distinctmeasure over a JSON-stored column (not measured).Reader who acts
Triage: grade and route. The rule would be lint's (
packages/lint): a walk overanalyticsCubesmember records, whosesqlis a column reference since PR #20998. The door's predicates (STRUCTURED_JSON_TYPES,isMultiValueField) are exported from@objectstack/spec/data.Dedupe
mcp__github__search_issues, repo-scoped, open and closed:None of the hits read is an authoring leg for cube members. #20890 is the dataset leg. #20807, #20808 and #20912 are the runtime legs, all closed. #21044 is the cube door.
Dedupe words:
analyticsCubes dimension json os validate·cube dimension structured json lint·lint reads analyticsCubes