Skip to content

[ML-69651] Fix AgentKit memory read-mask projections - #747

Closed
jamesbxwu wants to merge 1 commit into
mainfrom
codex/ml-69651-memory-read-mask
Closed

jamesbxwu wants to merge 1 commit into
mainfrom
codex/ml-69651-memory-read-mask

Conversation

@jamesbxwu

@jamesbxwu jamesbxwu commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

MemoryStore.get, list, and search raise KeyError when read_mask excludes actor_id or path, including read_mask="name,content". This remains reproducible against the 0.5.1 release source and current main. Parse these fields as optional values and return None when the API omits them.

Keep name required as the resource identity, document including it in read masks, and verify projected entries still support id, update, and delete. The OpenAI and LangGraph memory formatters use the resource name if a returned entry has no path.

This carries the approach from @anshul0713's existing PR #582 into the current databricks_agentkit typed resource layer. That PR still targets the former integrations/mason implementation and remains open; this draft provides a focused change against current main. Tracks ML-69651.

Validation:

  • Regression cases fail before the fix with KeyError: 'actor_id' or 'path'; they cover get, paginated list, scored search, legacy search, and name-based update/delete.
  • 260 affected memory/client/framework-tool tests passed.
  • Package-wide ruff check, ruff format --check (191 files), and ty check passed.
  • Release-source reproduction used tag databricks-agentbricks-v0.5.1 (96ade743), rather than the stale local editable distribution. No live workspace mutation was needed for this client-side parsing failure.

CI framework limitation: the only failing test cases are the six memory-backed test_history_orders_parallel_pending_messages variants, with pending-write order ["first", "last"] instead of ["last", "first"]. The identical six cases also fail on base commit a8d55f4 in main run 38662891535. They are pre-existing; no skips or forced passes were applied.

Bug-bash integration validation

The test-only combined branch at be2fa8ee8d6d3b3e011ecfa285e6455b90f9433a contains this exact PR head and eleven other reviewed heads. Its Agent Bricks unit suite passed 2,154 tests, 24 skipped. This is combined-source validation, not an isolated run of this PR; the branch must not be merged into main.

Private run 38698567494 passed all 20 live Claude cache tests at e231ca2 (OpenAI 8, LangGraph 4, generated adapters 8). Run 38701390693 at 53f9db8 passed OpenAI 8, LangGraph 4 and 3 adapter cases; the remaining 5 adapter cases returned HTTP403 because the shared test-workspace Gateway budget reached its $10 limit. Production source is identical across those runs and the final combined source; later changes affect only matrix fixtures, cleanup, regression tests and documentation. The rerun is not all green, and no budgets were changed.

The corrected Apps test passed 20/20 matrix rows, two grant snapshots, transitive-permission controls and repeat-deploy idempotency. Its evidence confirms clean source and wheel/source matching. That live run predates the final cleanup correction: the harness recorded twelve successful cleanup operations but omitted the implicit Runtime Store/role for direct-authoring Apps. #752 now includes ownership-checked cleanup for every App and safe retry/evidence handling, covered by focused regressions and the final unit suite. No new full model matrix was run for those cleanup-only changes.

Independent read-only run 38708044949 confirmed all 13 exact prior-run resources absent, including three consecutive typed404 observations for the omitted Runtime Store, dedicated database and role. One separate current-window database/role pair remains present and unattributed: SCIM did not recover its App identity and one bounded audit SELECT failed. That pair was left intact; full cleanup of the current matrix run is not established. No resources were deleted using name/time correlation alone.

The Apps matrix covers LangGraph, CLI/direct authoring, dev/deployed runtime and five tool kinds. Separate cache tests cover both LangGraph and OpenAI Agents. These checks do not establish fresh-account provisioning rights or freshly consented deployed Genie OBO acceptance.

All public checks finished. #694/#727 have 54 green; the other ten PRs have 53 green and the same framework job red. Its six memory-backed parallel-history ordering failures also occur on current main. No forced skips or weakened grant assertions were applied.

@jamesbxwu jamesbxwu changed the title Fix AgentKit memory read-mask projections (ML-69651) [ML-69651] Fix AgentKit memory read-mask projections Oct 15, 2026
@jamesbxwu

Copy link
Copy Markdown
Contributor Author

Closing as consolidated into the original fix #582. That branch now includes current main and every change from this draft, including the AgentKit namespace, optional projected fields, framework label fallback, read-mask docs, and expanded regressions. Its resulting source tree is identical to this draft's 301443d tree; both histories are retained by a normal merge, with no force-push.

#582 head c2fd79f passes 160 mocked memory-store/framework-tool tests, Ruff, formatting, focused types and diff checks. ML-69651 remains pending merge/release; closing this duplicate does not mean the fix is released. No PR was merged into main.

@jamesbxwu jamesbxwu closed this Oct 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant