Skip to content

Document Kuzu MAP-as-STRING pattern in plan + prompts#6

Merged
HumanBean17 merged 1 commit into
masterfrom
plan/tier1-kuzu-map-note
May 4, 2026
Merged

Document Kuzu MAP-as-STRING pattern in plan + prompts#6
HumanBean17 merged 1 commit into
masterfrom
plan/tier1-kuzu-map-note

Conversation

@HumanBean17
Copy link
Copy Markdown
Owner

Summary

Documents the Kuzu MAP-as-STRING pattern that PR-A1 (#5) discovered, so PR-A3's routes_by_layer doesn't re-discover it.

PR-A1 shipped routes_by_framework as a STRING JSON blob because Kuzu's Python binder (0.11.x) rejects a native dict bound to a MAP(STRING, INT64) parameter (STRUCT() vs MAP mismatch). The fix worked cleanly — schema comment, json.dumps on write, decode in kuzu_queries.meta(), plus a _META_LEGACY Cypher path so v4 graphs still read.

This PR makes the pattern part of the plan so:

  • It's listed in the Principles section (top of the plan).
  • PR-A1 §3.6 has the schema rewritten to STRING and a paragraph explaining why.
  • PR-A3 §3 calls out that routes_by_layer must follow the same pattern.
  • The Cursor prompts for both PR-A2 and PR-A3 have inline reminders so Sonnet sees it without opening the plan.

Files

  • plans/PLAN-TIER1-COMPLETION.md — three insertions (Principles, PR-A1 §3.6, PR-A3 §3).
  • plans/CURSOR-PROMPTS-TIER1.md — two insertions (PR-A2 prompt scope, PR-A3 prompt scope).

Planning artifacts only

No production code; no schema or behaviour change.

PR-A1 discovered that Kuzu's Python binder (0.11.x) rejects native
`dict` for `MAP(STRING, INT64)` parameters and shipped
`routes_by_framework` as a `STRING` JSON blob. Add this as a top-level
plan principle so PR-A3's `routes_by_layer` (the next map-shaped
graph_meta field) doesn't re-discover it. Reminder injected into both
the prompts file and the relevant plan sections.
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