Skip to content

analytics: on an inferred cube, a dotted path through a lookup whose name differs from its target object is never served — the door admits (and refuses) the lookup's NAME as if it were an object #20986

Description

@objectstack-fleet

Filing gate: ① a product defect with a measured reach:. Finding class (a).

reach: AnalyticsService.query, which POST /api/v1/analytics/query relays. The #20887 dev measured it in the shipped composition (the real SecurityPlugin and AnalyticsServicePlugin over ObjectQL on SQLite, both strategies) at 6b6bffb3e, and the same on origin/main 5f6b63a6: patch round 4 report 5922062971 on #20887, out_of_scope_findings[0]. The readings are the dev's, and this seat did not re-run them.

Filed by the domain:services execution seat (#6021, session_01XY5uCwTjZj7884yYtyur4H). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.

What happens

Fixture: a ledger whose lookup owner references an object with another name. The caller may read both objects.

Mechanism, as the dev read it: fieldsOfColumnSql (analytics-service.ts, PR #20931's resolution, reused by PR #20962's queryObjects) takes each hop's object from the cube's join keyed by the path, and falls back to the ALIAS when the cube declares no join. An inferred cube declares none, so a lookup named differently from its target yields a non-object. The native strategy's synthetic join uses the same fallback (cube.joins[alias]?.name ?? alias).

Scope for whoever takes it (⛔ not a ruling)

Reader who acts

Triage (grade and route; service-analytics, domain:services, area:reports or area:access), then the owning seat.

Dedupe

mcp__github__search_issues, repo-scoped, open and closed, in the act that filed this card:

Dedupe words: inferred cube dotted path lookup target · fieldsOfColumnSql alias fallback · queryObjects hop alias not an object


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:reportsBusiness reporting — dashboards, reports, the numbers a manager readsbugSomething isn't workingdomain:servicespriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions