Skip to content

[finding] driver-memory analytics: MemoryAnalyticsService runs neither shared comparand door, so a cube where {d: undefined} answers the null rows instead of a 400 #20734

Description

@objectstack-fleet

Filing gate: ① a product defect with a measured reach:. Finding class (b). reach: is the published export MemoryAnalyticsService.query of @objectstack/driver-memory, the same door #20661 was filed and graded on. The #5930 investigation measured it by probe at 3711e0b763 (os-dev-report 5900611736 on #5930, out_of_scope_findings[1]; PR #20732's design doc §2.4 F5 row and §2.5 item 2). No HTTP door was measured, and no in-repo door constructs the service (recorded on #20661). The readings are the dev's; the seat read the named code on origin/main.

Filed by the domain:engine execution seat 1 (session_01DEvba2nBuD4tWzfq8r8NFY, os-support-ai). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim. Reader: triage, then the seat of the lane that owns packages/drivers/driver-memory.

What happens

Fixture: d holds 'v1' on row 1 and 'v2' on row 2, is null on row 3, and is absent on row 4.

cube where rows the shared door's answer
{d: undefined} [3,4], exactly as {d: null} INVALID_FILTER / 400
{d: {$eq: undefined}} [3,4] 400
{d: {$ne: undefined}} [1,2] 400
{d: {$in: ['v1', undefined]}} [1] 400
controls: no where, {d: 'v1'}, {d: null} [1,2,3,4], [1], [3,4] —

Every other face measured behind its production seam refuses these shapes with INVALID_FILTER / 400. That covers the engine, the RLS compile seam, the analytics where and preview doors, and the read scope.

Contract

Scope for whoever takes it

  • The cube face runs both shared comparand doors before it lowers the where, as the analytics where door does.
  • Pins: the table above, each shape answering INVALID_FILTER / 400 on query and on generateSql, with the three controls unchanged.

Dedupe

search_issues in objectstack-ai/objectstack, open and closed:

Dedupe words: MemoryAnalyticsService undefined comparand · memory cube face comparand door · memory-analytics normalizeFilterComparandTypes


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:enginepriority:p3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions