Skip to content

Commit 4b34fad

Browse files
rahlkclaude
andcommitted
feat(neo4j)!: prefix all graph labels and rel types with TS
A shared Neo4j may hold Applications projected from several languages. Prefix every node label with `TS` (Application -> TSApplication) and every relationship type with `TS_` (HAS_MODULE -> TS_HAS_MODULE) so downstream analytics can disambiguate by namespace. Catalog is the source of truth; project/cypher/bolt/schema and tests move in lockstep, guarded by the conformance test. schema.neo4j.json and the README are regenerated. SCHEMA_VERSION -> 2.0.0 (breaking rename). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 509789d commit 4b34fad

12 files changed

Lines changed: 185 additions & 185 deletions

File tree

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ Options:
145145
neo4j (graph.cypher or live push) | schema (the
146146
Neo4j schema.json contract) (default: "json")
147147
--app-name <name> logical application name for the graph
148-
:Application anchor (default: input dir name)
148+
:TSApplication anchor (default: input dir name)
149149
--neo4j-uri <uri> push the graph to a live Neo4j over Bolt
150150
(incremental); omit to write graph.cypher (env:
151151
NEO4J_URI)
@@ -232,14 +232,14 @@ Caller- and callee-side identifiers come from a single signature canonicalizer,
232232
### Neo4j graph
233233

234234
`--emit neo4j` projects the same analysis into a labeled property graph (declarations keyed by
235-
their signature under a shared `:Symbol` label; calls, imports, inheritance, decorators, and call
235+
their signature under a shared `:TSSymbol` label; calls, imports, inheritance, decorators, and call
236236
sites as relationships):
237237

238238
- **Without `--neo4j-uri`** — writes a self-contained `graph.cypher` (constraints + indexes, a
239239
scoped wipe, then batched `MERGE`s). Load it with `cypher-shell < graph.cypher`.
240240
- **With `--neo4j-uri`** — pushes to a live Neo4j over Bolt **incrementally**: only modules whose
241241
content hash changed are rewritten, and on a full run modules whose source file vanished are
242-
pruned. Every graph carries a `schema_version` on its `:Application` node.
242+
pruned. Every graph carries a `schema_version` on its `:TSApplication` node.
243243

244244
The connection options also read the standard Neo4j environment variables — `NEO4J_URI`,
245245
`NEO4J_USERNAME`, `NEO4J_PASSWORD`, `NEO4J_DATABASE` — when the corresponding flag is omitted (an

0 commit comments

Comments
 (0)