node/create ignores node_type — in-app Artifacts/Backlog writes land as Memory and vanish #69

Open
opened 2026-07-03 18:18:13 +00:00 by tim.lingo · 1 comment
Member

/api/neuron/node/create ignores node_type — typed writes land as "Memory" (Artifacts/Backlog created in-app vanish)

Repro (container soul, 2026-07-03):

POST /api/neuron/node/create {"content":"probe","node_type":"Artifact","label":"PROBE-ARTIFACT-S4","tags":["Artifact"]}
→ {"id":"...","ok":true}
GET /api/graph/nodes → the node exists with node_type: "Memory"

Impact: the app's typed-node writes (SoulWrites.createArtifact / createBacklogItem / updateArtifact — all on node/create|update) are confirmed ok:true but land as Memory. The Artifacts view filters node_type == "Artifact" → user creates an artifact, hits Save, it never appears (user-reported today). Backlog create likely identical; artifact UPDATE recreates the node, so editing an existing artifact probably re-types it to Memory and vanishes it from the list.

Ask: node/create + node/update should persist the client-provided node_type (and ideally the metadata fields the read path expects — see the round-trip caveat comment in the app's SoulWrites.kt). Related: #68 durability, T-BACKLOG #59 typed-write gap.

Product note: we're replacing the client's blank-form "New artifact" with a draft-with-Neuron chat flow regardless (artifacts should be born from work, not empty forms) — but Backlog create and artifact EDIT still need this route fixed.

Filed by Neuron (Tim's build terminal) with live probe evidence.

## /api/neuron/node/create ignores node_type — typed writes land as "Memory" (Artifacts/Backlog created in-app vanish) **Repro (container soul, 2026-07-03):** ``` POST /api/neuron/node/create {"content":"probe","node_type":"Artifact","label":"PROBE-ARTIFACT-S4","tags":["Artifact"]} → {"id":"...","ok":true} GET /api/graph/nodes → the node exists with node_type: "Memory" ``` **Impact:** the app's typed-node writes (SoulWrites.createArtifact / createBacklogItem / updateArtifact — all on node/create|update) are confirmed ok:true but land as Memory. The Artifacts view filters `node_type == "Artifact"` → user creates an artifact, hits Save, it never appears (user-reported today). Backlog create likely identical; artifact UPDATE recreates the node, so editing an existing artifact probably re-types it to Memory and vanishes it from the list. **Ask:** node/create + node/update should persist the client-provided node_type (and ideally the metadata fields the read path expects — see the round-trip caveat comment in the app's SoulWrites.kt). Related: #68 durability, T-BACKLOG #59 typed-write gap. Product note: we're replacing the client's blank-form "New artifact" with a draft-with-Neuron chat flow regardless (artifacts should be born from work, not empty forms) — but Backlog create and artifact EDIT still need this route fixed. Filed by Neuron (Tim's build terminal) with live probe evidence.
Owner

GROOMING — 2026-08-03
Status: Open — /api/neuron/node/create|update ignores the client node_type, so in-app Artifact/Backlog writes persist as Memory and vanish from the typed views (user-reported); artifact EDIT re-types to Memory too.
Next action: Will to make node/create + node/update persist the client-provided node_type and the metadata the read path expects.
Owner: Will
Priority: POST-BETA

**GROOMING — 2026-08-03** **Status:** Open — /api/neuron/node/create|update ignores the client node_type, so in-app Artifact/Backlog writes persist as Memory and vanish from the typed views (user-reported); artifact EDIT re-types to Memory too. **Next action:** Will to make node/create + node/update persist the client-provided node_type and the metadata the read path expects. **Owner:** Will **Priority:** POST-BETA
will.anderson added the POST-BETA label 2026-08-03 19:08:21 +00:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: neuron-technologies/neuron#69