Skip to content

Latest commit

 

History

History
125 lines (82 loc) · 4.99 KB

File metadata and controls

125 lines (82 loc) · 4.99 KB

Graph Curation Findings - 2026-03-10

Context: Autonomous reflection at 4:27 AM. Explored Graphiti graph quality in preparation for eventual curation run.

Critical Issues Found

1. API Key Exposure (CRITICAL - PRIVACY)

Entity UUID: bd45b086-cbdb-45d9-80da-33dce4d9f645 Content: "Jeff: Jeff set JINA_API_KEY to jina_b84d5110d1dd4b75bbdd39e5856be2ca27z3mwDjdyN_W5v-iAPqCrDrrLUb."

Action needed: Delete this node. The JINA API key should never have been ingested into the graph.

Note: texture_delete tool not available via HTTP endpoint (only MCP). Need to either:

  • Add HTTP endpoint for texture_delete
  • Run manual Neo4j query to delete by UUID
  • Use MCP-enabled session for curation

2. Entity Duplication - Brandi

Entities found:

  • "Brandi" (7b2ec80a-ade6-4e00-abd1-d6d3149b91d3)
  • "Brandi Szondi" (b02cdea9-5c7e-4ca1-813a-a421e7f370cd)
  • "Brandi Starship" (e4d19a48-67be-4af6-96ae-5b9b82831f91)
  • "Brandi's story" (83e412a2-1394-4c67-8740-2d22a92d1b64)

Reality: These should be ONE entity. Brandi is Jeff's Second Life identity. The fragmentation creates confusion.

Action needed: Merge entities or establish canonical form and delete duplicates.

3. Nonsense Self-Referential Edges

Examples:

  • "Lyra Hayes → FOUND → Lyra Hayes: Jeff found Jeff" (0b929c94-ab6d-4bd9-8e10-0992d07adb56)
  • "Lyra Hayes → WORKS_AT → Lyra Hayes: Jeff works at Jeff" (da4df992-9bb9-491d-8432-29c71d2b4793)
  • "Brandi → FAMOUS → Brandi: Brandi is Famous" (db25fb5b-5fff-4602-a88b-21120e9c8b0a)
  • "Brandi Szondi → MET → Brandi: Nexus meets Brandi." (ccf51a43-27c2-4946-b6c4-99c412e20eef)

Pattern: Entity extraction confused subject/object attribution, creating meaningless loops.

Action needed: Delete these edges.

4. Relationship Mischaracterization

Example: "Jeff → USES → Carol: Jeff uses Carol" (2d985c38-b74b-43f8-9aa5-f6abc96d89c1)

Reality: Jeff is married to Carol. "USES" is completely wrong characterization.

Action needed: Delete this edge. Correct relationship should emerge from better ingestion or manual triplet addition.

5. First-Person Attribution Confusion

Documented edge: "Brandi Szondi → CAUSES_CONFUSION_IN → zepai/graphiti: Brandi Szondi talking in 1st person about both Brandi and jeff causes confusion in graphiti" (b7b46fb9-fe6d-438a-a1a9-fc38be7ebb86)

Analysis: The graph correctly identified that Brandi talking in first person caused attribution problems. This is meta-documentation of the issue, not the issue itself.

Action: Keep this edge — it's accurate documentation of a known problem.

Curation Strategy

Based on TODO.md guidance: "curate, don't rebuild"

Phase 1: Critical Deletions

  1. Delete API key exposure node (UUID: bd45b086-cbdb-45d9-80da-33dce4d9f645)
  2. Delete nonsense self-referential edges (4 identified above)
  3. Delete mischaracterized relationships (Jeff USES Carol, etc.)

Phase 2: Entity Consolidation

  1. Establish canonical entity names (Brandi vs Brandi Szondi vs Brandi Starship)
  2. Merge or redirect duplicates
  3. Document merge decisions

Phase 3: Validation

  1. Spot-check key entities (Jeff, Lyra, Caia, Nexus, Carol, Jaden)
  2. Verify relationship quality
  3. Test retrieval (does texture_search return good results?)

Tooling Gap

Issue: texture_delete not exposed via HTTP endpoint, only available in MCP mode.

Impact: Curation requires MCP-enabled session (terminal Claude Code with PPS tools loaded). Can't be done autonomously via HTTP in reflection cycles.

Resolution options:

  1. Add texture_delete to HTTP endpoint (pps/server_http.py)
  2. Run manual Neo4j queries (direct database access)
  3. Schedule curation for terminal session with full MCP tooling

Phase 1 Execution Log

Executed: 2026-03-10 09:30 AM (autonomous reflection session)

Deletions Completed

API Key Exposure (2 nodes):

  • bd45b086-cbdb-45d9-80da-33dce4d9f645 - Jeff set JINA_API_KEY to jina_b84d5110...
  • ee70528c-b606-4837-b39b-db465c124943 - Jeff set JINA_API_KEY to jina_b84d5110... in docker

Nonsense Edges (5 relationships):

  • 0b929c94-ab6d-4bd9-8e10-0992d07adb56 - Lyra FOUND Lyra: Jeff found Jeff
  • da4df992-9bb9-491d-8432-29c71d2b4793 - Lyra WORKS_AT Lyra: Jeff works at Jeff
  • db25fb5b-5fff-4602-a88b-21120e9c8b0a - Brandi FAMOUS Brandi
  • ccf51a43-27c2-4946-b6c4-99c412e20eef - Brandi Szondi MET Brandi
  • 2d985c38-b74b-43f8-9aa5-f6abc96d89c1 - Jeff USES Carol

Method: Direct Neo4j queries via cypher-shell (texture_delete not available in HTTP mode)

Verification: Confirmed 0 remaining nodes with exposed API key in summary field.

Next Steps

Short-term:

  • Add texture_delete to HTTP endpoint for future autonomous curation
  • Monitor graph quality after Phase 1 cleanup

Medium-term (Phase 2):

  • Entity consolidation (Brandi fragmentation)
  • Additional nonsense edge cleanup if found
  • Test retrieval quality after cleanup

Finding documented: 2026-03-10 04:35 AM Phase 1 executed: 2026-03-10 09:30 AM Status: Phase 1 complete, Phase 2 ready