Nishi Family › Compare › Code Genealogy and Provenance (Genealogist)

Nishi Compare · capabilities, evidence and delivery

Code Genealogy and Provenance (Genealogist)

Compare capabilities and delivery evidence. Source discovery, qualification, deployment and accepted outcomes are separate; an open contract names work still to verify.

Nishi vs Sourcegraph and CodeQL and jscpd and dependency-cruiser

Overview

The purpose, declared position and evidence coverage of this domain. Source presence and completed acceptance are different measures.

Where we are. The Genealogist is FamilySearch-for-code with a signature the field does not have: genesis lineage traced to the SEED, not the first commit (exceed), a relatedness graph, a sovereign whole-tree reference search with zero timeout on 89k files (exceed), duplicate and shadow-name detection with a prioritized resolution worklist, and the module dependency graph. It lacks the field's semantic depth: no language-server code graph, no dataflow query engine, no typed AST call-graph, no cross-language analysis, no coupling metrics, no token-level clone detection, no visual graph, no SBOM attestation, no churn and hotspot history, no IDE or CI surface. Lineage momentum 3121 is the hottest frontier signal on any radar.

Where we need to go. From textual reference to semantic truth: an AST-precise typed call-graph, a code-graph navigation door (go-to-def, find-refs) that the future LSP rides, a dataflow query engine over it, coupling metrics and a visual graph that the architecture ratchet can consume, token-level clones, SBOM attestation shared with the janitor and warden, and churn from our own sovereign history -- all NishiLang-first, cross-language by extension.

The unit. 1 u = one measured session-leg (estate calibration: graphics R21 in one leg 2026-08-15). Local evidence: nx_organ_callers and the dupname worklist each landed in one leg; estimates are relative to those.
Where we are: 10 open rungs. Ancestry and reference search ahead; semantic and historical depth absent. Counts measured at emit below this line.
Cost to a precise call-graph: 2 u. GN1 the typed AST call-graph -- the named next rung and the foundation every other semantic rung reads.
Cost to navigation and queries: 4.5 u. GN2 go-to-def and find-refs over GN1, GN3 the dataflow query engine over it.
Cost to the metrics and surfaces: 11 u. GN4 coupling, GN5 token clones, GN6 the SVG graph, GN7 SBOM attestation, GN8 churn, GN9 cross-language parse, GN10 the IDE and CI bridge.

Research bar. Sourcegraph is measured on precise code intelligence, cross-repo navigation. Theirs: the code-graph bar. Ours: GN1 GN2 GN9 GN10 measured on this page.

Research bar. CodeQL is measured on code as a queryable database, dataflow and taint. Theirs: the query-engine bar. Ours: GN3.

Research bar. dependency-cruiser and jscpd is measured on rule-checked dependency graphs, SVG rendering; token-hash clone detection. Theirs: the graph and clone bars. Ours: GN5 GN6.

Research bar. SLSA and in-toto is measured on supply-chain provenance attestation. Theirs: the SBOM bar. Ours: GN7.

Latest recorded release

No valid dated release entry is recorded for this domain.

Release entries describe recorded changes; they do not establish that every capability passed evaluation.

8 of 18 capability source symbols found|2 of them authored stronger-claims|10 open|coverage 444/1000|adoption 7 full / 1 partial

Evidence profile — what the gaps on this board actually are

Measured by nx_swcompare_evidence, read back by nx_evprofile_lib. Every figure is a count with its denominator — there is deliberately no score, no grade and no percentage anywhere in this band, because a stored scalar is a field a seat can edit and a counted partition is not.

evidence|grounded 8/8|unsupported 0|gates green 1/1|proven able to fail 1/1|never bitten 0|green at 0/0 0|open gaps 10|of them unnamed 0|of them proof withheld 0|flips ready 0

proven able to fail counts the gates that have a RECORDED RED — nx_gate_bite mutated the gate subject, rebuilt it, watched the gate go red, and that record is inside the shared TTL. never bitten is its complement over the same denominator: those gates ran and were green, and nothing has ever shown them able to detect anything, so their green is a statement about this run and not about the gate. green at 0/0 is a separate and much weaker observation — the gate printed GREEN on a zero denominator, so its own tooth counter says it examined nothing. A gate can be green, non-zero, and still never bitten; that is the common case and it is now visible instead of implied.

partition: grounded + unsupported = 8 vs present 8 · named + unnamed + withheld = 10 vs open 10 · both reconcile

liar-kill conj=GPQN · all four conjuncts held

graded document: BUILDROOT tree, 6549 bytes · gates map: PRIMARY · stamped 3d 1h ago · source ../knowledge/status/evstamp_genealogy.verdict

Gap classWhat it is, and the work it names
NONENo gap class fires on this board: every published claim is grounded, the declared gates ran and were green, no watch contract is unnamed or already landed, and the stamp is inside its TTL. That is a statement about evidence, not about depth, scale or polish.
This band reports the referee counts. The per-axis worklist rows — which axis is unsupported, which watch is ready to flip, which gap is unnamed — are printed by nx_swcompare_evidence genealogy itself and are not carried on the stamp, so this page names the classes and the producer names the rows. That split is stated rather than hidden: a count without a worklist is not actionable, and this band is honest about which half of that it is.

Production map

Follow the dependencies, declared acceptance criteria and recorded priorities. Inspect source binding before treating a rank as executable work.

Ranking source binding: PLAN_MATRIX_BOUND_ONLY. Recorded priorities require current acceptance evidence and resource checks before execution.

Ranking matches the captured plan and matrix only. Latest execution outcome, research freshness, accepted delivery and investment return are unverified.

Recorded priority estimates

Order from nx_compare_rank (nx_dr_ocm: (deficit + cost-of-delay + option + enables) x sponsor x self-sufficiency x momentum / cost). FINISH rows are rungs whose symbol is present but whose organ is short of full adoption: listed before new work by this heuristic. Priority is not measured delivery cost or execution readiness. Stamp: # asof=1790081806 domain=genealogy target_version=0.1 rungs=13 done=3 open=10 finish=0 ranker=nx_dr_ocm

#StageRungPriorityDerivation
#10.1Typed AST call-graph (GN1) cga_typed_edges dossier2000v=20 m=2 c=20
#20.1Visual dependency graph (GN6) dgs_render_svg dossier600v=3 m=2 c=10
#3laterToken-level clone detection (GN5) cla_token_clones dossier1066v=8 m=2 c=15
#4laterCode-graph navigation (GN2) cg_goto_def dossier1000v=15 m=1 c=15
#5laterCoupling and cohesion metrics (GN4) cpl_coupling_score dossier1000v=15 m=1 c=15
#6laterSBOM attestation (GN7) sba_emit_attest dossier200v=2 m=2 c=20
#7laterChurn and hotspot history (GN8) ch_hotspot_rank dossier200v=3 m=1 c=15
#8laterCross-language parse (GN9) ml_parse_lang dossier200v=4 m=1 c=20
#9laterIDE and CI bridge (GN10) gide_serve dossier200v=3 m=1 c=15
#10laterDataflow query engine (GN3) cq_dataflow_query dossier166v=5 m=1 c=30

Declared roadmap — contract, acceptance, executor, effort

RungCloses withDefinition of done (pre-declared)ExecutorEst.
Organ ancestry graph (GG0)gen_relatednessRelatedness by shared ancestry, genesis lineage to the seed -- LANDEDOrgan0 u
Whole-tree reference search (GG1)oc_grepNo-timeout reference walk over 89k files -- LANDEDOrgan0 u
Dependency graph of the tree (GG2)
after GG0
gen_obj_relatedlineage_graph.tsv, the sovereign dep graph -- LANDEDOrgan0 u
Typed AST call-graph (GN1)
after GG1
cga_typed_edgesCall edges resolved through the parser's own symbol table with types (no over-reporting by name); gate proves a fixture with two same-named functions in different files resolves each call to the right target where oc_grep reports both, and the edge count over the corpus is printed with its partitionOrgan2 u
Code-graph navigation (GN2)
after GN1
cg_goto_defGo-to-definition and find-references over GN1 as a door the future LSP rides (the lang lane's lsp_serve watch); gate proves goto-def on a fixture call returns the exact file:line and find-refs returns every precise callerOrgan1.5 u
Dataflow query engine (GN3)
after GN1
cq_dataflow_queryA query language over GN1 plus def-use chains: taint from a source to a sink across calls; gate proves a planted source-to-sink path through two organs is found and a sanitized path is notOrgan3 u
Coupling and cohesion metrics (GN4)
after GN1
cpl_coupling_scoreAfferent and efferent coupling plus instability per organ from GN1 edges, published per organ and per directory; gate proves the estate-wide numbers reconcile with nx_eco_graph_arch's fan-in census on the base organOrgan1.5 u
Token-level clone detection (GN5)
after GG1
cla_token_clonesHash-windowed token clones across the corpus at a declared minimum length read as data, ranked by external-caller count like the dupname worklist; gate proves a planted 40-token clone pair is found and a renamed-identifier pair is found too (type-2 clones)Organ1.5 u
Visual dependency graph (GN6)
after GG2
dgs_render_svgSVG of any organ's neighbourhood from GG2 edges through the sovereign raster path; gate proves the node and edge counts in the SVG equal the TSV subsetOrgan1 u
SBOM attestation (GN7)
after GG2
sba_emit_attestAn in-toto-style attestation over the janitor's SBOM (the sbom_emit contract on /compare/janitor) signed with the estate's ed25519 primitive, verifiable by prov_verify; gate proves a tampered SBOM fails verificationOrgan2 u
Churn and hotspot history (GN8)
after GN4
ch_hotspot_rankChange frequency per organ from the sovereign git and journals, ranked and joined to GN4 coupling to name hotspots; gate proves the most-changed organ in a fixture history ranks first and an organ with no history reads UNOBSERVEDOrgan1.5 u
Cross-language parse (GN9)
after GN1
ml_parse_langExtension-level genealogy for non-NishiLang files upgraded to a real parse for at least one foreign language through a declared grammar table; gate proves imports in a fixture JS file become edgesOrgan2 u
IDE and CI bridge (GN10)
after GN2,GN5
gide_serveExpose GN2 and GN5 through the dev API daemon so an editor or the CI lane can ask; gate proves a request over the edge returns the same answer as the CLIOrgan1.5 u

Milestones

MilestoneRungsCumulative
M1 · Precise call-graph and a picture of the treeGN1,GN63 u
M2 · Navigate and queryGN2,GN37.5 u
M3 · Metrics, clones, attestation, history, surfacesGN4,GN5,GN7,GN8,GN9,GN1017.5 u
Ladder verdict. NOT DECLARED. This board names no dated best-in-class or frontier target and no rung roles (sotatarget and rungrole rows on its plan); the ranker labels it NO-LADDER until it does, and until then its rungs climb toward a target nobody has written down. Bars read NO-BAR against the current month 2026-10.
Bar freshness, counted
ClassCountNote
bars0sotabar rows on the plan
fresh0the bar month is the current month
attested0an older bar with a this-month barscan reporting no newer entry
stale0a this-month scan saw a newer month the bar ignores
unattested0nobody looked this month
malformed0a sotabar row missing a field
duplicate0bar ids an earlier row already carries
bars, summed0RECONCILED: the parts sum to the total 0
current month2026-10the month every bar is judged against
Treatment verdict. NOT DECLARED. No rung on this board declares its three-step treatment (a treat row naming the MCP row, the API route, the primitive it composes, the workflow that composes it and the agent beat that runs it); the ranker labels every rung TREATMENT-UNDECLARED until it does.

Inspect a rung and its prerequisites

Declared nodes 13. Rank input binding: PLAN_MATRIX_BOUND_ONLY. Dependency order is authored. Implementation, acceptance evidence, authority and resource readiness are unverified. No action is recommended or dispatched here.

Plan SHA-256 1c5fb5155d06ab154da07a3db2d93d635e7c5a6e3ba1c044b0ec225b14147aa4. Target rows 0; role rows 0. Existing risks and release worklog retain their own scope; no node completion is inferred.

Runtime observation coverage: 0 of 13 rungs have current, identity-bound execution observations. Observation may report RED. Accepted completion remains unknown; source presence, qualification and deployment do not establish it.

Use Enter or Space on a rung to inspect its contract. Prerequisite links locate another rung in this list; open its summary to inspect it. Estimates are authored effort, not forecasts.

  1. GG0 — Organ ancestry graph

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: gen_relatedness

    Acceptance: Relatedness by shared ancestry, genesis lineage to the seed -- LANDED

    Authored effort: 0. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  2. GG1 — Whole-tree reference search

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: oc_grep

    Acceptance: No-timeout reference walk over 89k files -- LANDED

    Authored effort: 0. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  3. GG2 — Dependency graph of the tree

    Prerequisites: GG0 (acceptance unverified)

    Contract: gen_obj_related

    Acceptance: lineage_graph.tsv, the sovereign dep graph -- LANDED

    Authored effort: 0. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  4. GN1 — Typed AST call-graph

    Prerequisites: GG1 (acceptance unverified)

    Contract: cga_typed_edges

    Acceptance: Call edges resolved through the parser's own symbol table with types (no over-reporting by name); gate proves a fixture with two same-named functions in different files resolves each call to the right target where oc_grep reports both, and the edge count over the corpus is printed with its partition

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  5. GN2 — Code-graph navigation

    Prerequisites: GN1 (acceptance unverified)

    Contract: cg_goto_def

    Acceptance: Go-to-definition and find-references over GN1 as a door the future LSP rides (the lang lane's lsp_serve watch); gate proves goto-def on a fixture call returns the exact file:line and find-refs returns every precise caller

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  6. GN3 — Dataflow query engine

    Prerequisites: GN1 (acceptance unverified)

    Contract: cq_dataflow_query

    Acceptance: A query language over GN1 plus def-use chains: taint from a source to a sink across calls; gate proves a planted source-to-sink path through two organs is found and a sanitized path is not

    Authored effort: 3. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  7. GN4 — Coupling and cohesion metrics

    Prerequisites: GN1 (acceptance unverified)

    Contract: cpl_coupling_score

    Acceptance: Afferent and efferent coupling plus instability per organ from GN1 edges, published per organ and per directory; gate proves the estate-wide numbers reconcile with nx_eco_graph_arch's fan-in census on the base organ

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  8. GN5 — Token-level clone detection

    Prerequisites: GG1 (acceptance unverified)

    Contract: cla_token_clones

    Acceptance: Hash-windowed token clones across the corpus at a declared minimum length read as data, ranked by external-caller count like the dupname worklist; gate proves a planted 40-token clone pair is found and a renamed-identifier pair is found too (type-2 clones)

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  9. GN6 — Visual dependency graph

    Prerequisites: GG2 (acceptance unverified)

    Contract: dgs_render_svg

    Acceptance: SVG of any organ's neighbourhood from GG2 edges through the sovereign raster path; gate proves the node and edge counts in the SVG equal the TSV subset

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  10. GN7 — SBOM attestation

    Prerequisites: GG2 (acceptance unverified)

    Contract: sba_emit_attest

    Acceptance: An in-toto-style attestation over the janitor's SBOM (the sbom_emit contract on /compare/janitor) signed with the estate's ed25519 primitive, verifiable by prov_verify; gate proves a tampered SBOM fails verification

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  11. GN8 — Churn and hotspot history

    Prerequisites: GN4 (acceptance unverified)

    Contract: ch_hotspot_rank

    Acceptance: Change frequency per organ from the sovereign git and journals, ranked and joined to GN4 coupling to name hotspots; gate proves the most-changed organ in a fixture history ranks first and an organ with no history reads UNOBSERVED

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  12. GN9 — Cross-language parse

    Prerequisites: GN1 (acceptance unverified)

    Contract: ml_parse_lang

    Acceptance: Extension-level genealogy for non-NishiLang files upgraded to a real parse for at least one foreign language through a declared grammar table; gate proves imports in a fixture JS file become edges

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  13. GN10 — IDE and CI bridge

    Prerequisites: GN2 (acceptance unverified), GN5 (acceptance unverified)

    Contract: gide_serve

    Acceptance: Expose GN2 and GN5 through the dev API daemon so an editor or the CI lane can ask; gate proves a request over the edge returns the same answer as the CLI

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

Learning and practice paths

No structured learning path is declared for this plan. Existing research, roadmap and worklog remain available above.

Rung dossiers — every record that bears on a rung, in one place

Joined by symbol, never typed. Each dossier is assembled on every publish from the rows this board already carries: the plan's rung row, the matrix row that carries its contract symbol (its status re-measured by the one symbol ruler), the gate the organ declares and the verdict the evidence referee recorded on its last run, the reference marks in the rung text, the design rows that name the rung and the work log filed against it. The capability matrix links each cell to its dossier and each dossier links back to its cell and forward to the rungs it stands on; a dependency naming no rung on this plan is written as UNRESOLVED rather than linked. Absences are named: NO-MATRIX-ROW, NO-GATE-DECLARED, UNRECORDED.
Gate verdicts: UNSTAMPED — no per-gate verdict artifact is published for this domain yet (nx_swcompare_evidence genealogy writes it beside its stamp); every gate below reads UNRECORDED until it runs.
Gate declarations: knowledge/organ_gate.conf read from this working directory (1 rows) and from the estate root (196 rows); rows in both counted once: 0; declarations read: 197. Every declaration in either copy counts, so a stub beside the publisher can never hide the root.
GG0 Organ ancestry graph · cell PRESENT · gate NO-GATE-DECLARED
Contractgen_relatedness · executor Organ · 0 u · stands on nothing
Definition of doneRelatedness by shared ancestry, genesis lineage to the seed -- LANDED
Matrix cellOrgan ancestry and relatedness graph · runtime/_hdl_build/nx_genealogist.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_genealogist; declare nx_genealogist TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GG1 Whole-tree reference search · cell PRESENT · gate NO-GATE-DECLARED
Contractoc_grep · executor Organ · 0 u · stands on nothing
Definition of doneNo-timeout reference walk over 89k files -- LANDED
Matrix cellSovereign whole-tree reference search with zero timeout · runtime/_hdl_build/nx_organ_callers.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_organ_callers; declare nx_organ_callers TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GG2 Dependency graph of the tree · cell PRESENT · gate NO-GATE-DECLARED
Contractgen_obj_related · executor Organ · 0 u · stands on GG0
Definition of donelineage_graph.tsv, the sovereign dep graph -- LANDED
Matrix cellDependency graph of the module tree · runtime/_hdl_build/nx_genealogist.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_genealogist; declare nx_genealogist TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN1 Typed AST call-graph · cell WATCHING · gate NO-GATE-DECLARED
Contractcga_typed_edges · executor Organ · 2 u · stands on GG1
Definition of doneCall edges resolved through the parser's own symbol table with types (no over-reporting by name); gate proves a fixture with two same-named functions in different files resolves each call to the right target where oc_grep reports both, and the edge count over the corpus is printed with its partition
Matrix cellPrecise typed call-graph (AST + types) · runtime/nx_callgraph_ast.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_callgraph_ast; declare nx_callgraph_ast TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN2 Code-graph navigation · cell WATCHING · gate NO-GATE-DECLARED
Contractcg_goto_def · executor Organ · 1.5 u · stands on GN1
Definition of doneGo-to-definition and find-references over GN1 as a door the future LSP rides (the lang lane's lsp_serve watch); gate proves goto-def on a fixture call returns the exact file:line and find-refs returns every precise caller
Matrix cellSemantic code-graph navigation (go-to-def / refs) · runtime/nx_code_graph.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_code_graph; declare nx_code_graph TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN3 Dataflow query engine · cell WATCHING · gate NO-GATE-DECLARED
Contractcq_dataflow_query · executor Organ · 3 u · stands on GN1
Definition of doneA query language over GN1 plus def-use chains: taint from a source to a sink across calls; gate proves a planted source-to-sink path through two organs is found and a sanitized path is not
Matrix cellSemantic dataflow / dependency queries · runtime/nx_codeql_query.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_codeql_query; declare nx_codeql_query TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN4 Coupling and cohesion metrics · cell WATCHING · gate NO-GATE-DECLARED
Contractcpl_coupling_score · executor Organ · 1.5 u · stands on GN1
Definition of doneAfferent and efferent coupling plus instability per organ from GN1 edges, published per organ and per directory; gate proves the estate-wide numbers reconcile with nx_eco_graph_arch's fan-in census on the base organ
Matrix cellCoupling and cohesion / architecture metrics · runtime/nx_coupling.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_coupling; declare nx_coupling TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN5 Token-level clone detection · cell WATCHING · gate NO-GATE-DECLARED
Contractcla_token_clones · executor Organ · 1.5 u · stands on GG1
Definition of doneHash-windowed token clones across the corpus at a declared minimum length read as data, ranked by external-caller count like the dupname worklist; gate proves a planted 40-token clone pair is found and a renamed-identifier pair is found too (type-2 clones)
Matrix cellClone detection at token / AST granularity · runtime/nx_clone_ast.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_clone_ast; declare nx_clone_ast TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN6 Visual dependency graph · cell WATCHING · gate NO-GATE-DECLARED
Contractdgs_render_svg · executor Organ · 1 u · stands on GG2
Definition of doneSVG of any organ's neighbourhood from GG2 edges through the sovereign raster path; gate proves the node and edge counts in the SVG equal the TSV subset
Matrix cellVisual dependency graph · runtime/nx_depgraph_svg.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_depgraph_svg; declare nx_depgraph_svg TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN7 SBOM attestation · cell WATCHING · gate NO-GATE-DECLARED
Contractsba_emit_attest · executor Organ · 2 u · stands on GG2
Definition of doneAn in-toto-style attestation over the janitor's SBOM (the sbom_emit contract on /compare/janitor) signed with the estate's ed25519 primitive, verifiable by prov_verify; gate proves a tampered SBOM fails verification
Matrix cellSBOM and supply-chain attestation · runtime/nx_sbom_attest.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_sbom_attest; declare nx_sbom_attest TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN8 Churn and hotspot history · cell WATCHING · gate NO-GATE-DECLARED
Contractch_hotspot_rank · executor Organ · 1.5 u · stands on GN4
Definition of doneChange frequency per organ from the sovereign git and journals, ranked and joined to GN4 coupling to name hotspots; gate proves the most-changed organ in a fixture history ranks first and an organ with no history reads UNOBSERVED
Matrix cellHistorical churn and hotspot analysis · runtime/nx_churn.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_churn; declare nx_churn TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN9 Cross-language parse · cell WATCHING · gate NO-GATE-DECLARED
Contractml_parse_lang · executor Organ · 2 u · stands on GN1
Definition of doneExtension-level genealogy for non-NishiLang files upgraded to a real parse for at least one foreign language through a declared grammar table; gate proves imports in a fixture JS file become edges
Matrix cellCross-language analysis · runtime/nx_multilang_graph.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_multilang_graph; declare nx_multilang_graph TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
GN10 IDE and CI bridge · cell WATCHING · gate NO-GATE-DECLARED
Contractgide_serve · executor Organ · 1.5 u · stands on GN2, GN5
Definition of doneExpose GN2 and GN5 through the dev API daemon so an editor or the CI lane can ask; gate proves a request over the edge returns the same answer as the CLI
Matrix cellIDE / CI integration · runtime/nx_gen_ide.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_gen_ide; declare nx_gen_ide TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet

dossiers=13 cells_joined=13 no_matrix_row=0 (sum 13) gates_recorded=0 gates_unrecorded=0 no_gate_declared=13 (sum 13 of cells_joined) evgates=UNSTAMPED

Capability comparisons

Compare the field, search individual capabilities and open their source and adoption evidence. Documented presence does not establish comparative quality.

Position map — centrality and distinctiveness

The four-quadrant map the field uses for brand strategy (Dawar and Bagga, HBR June 2015), re-derived from this matrix on every publish. Centrality is the share of the category's feature mass a player covers, each feature weighted by how many hold it; distinctiveness is the average lead over each rival on the rows the player holds; breadth is the depth-weighted share of the whole matrix (the bubble); depth is how deeply the rows held are held; momentum is the day-over-day move off the spine (green rising, red falling, grey until day two); the dashed path runs first day → previous day → today. Dividers are the category means. Axes are fitted to the field of play, so read the tick numerals, not the frame. Rival marks are documented presence, so a rival's position reads the record, never its quality. The picture grades its own readability below; the table beside it is the same data for a screen reader or a second method.

Rows. 18 feature rows mapped of 18 matrix rows; 0 substrate rows (kernels, bounds and instruments the plan's rungrole marks substrate) are the estate's scaffolding, not category features, and stay off the map
Views. 2D cut: centrality, distinctiveness · 3D cube: centrality, distinctiveness, breadth · axes registered: centrality, distinctiveness, breadth, depth, momentum · a board picks its own in knowledge/compare/genealogy.cdmap (cut|x|y, cube|x|y|z); absent = the HBR defaults
Position map, two-dimensional cutOne bubble per player. Bubble area is breadth, the ring colour is momentum, the dashed lines are the category means, and both axes are fitted to the field of play with their tick numerals shown. Every value is repeated in the table that follows. 200 300 400 500 600 700 800 900 1000 250 300 350 400 450 500 550 600 650 centrality (permil, fitted 200–1000) distinctiveness (permil, fitted 250–650) mean 608 mean 426 Unconventional Aspirational Peripheral Mainstream Nishi, centrality 354, distinctiveness 583, breadth 333, depth 750, momentum 0 Sourcegraph, centrality 854, distinctiveness 493, breadth 574, depth 794, momentum 0 CodeQL, centrality 812, distinctiveness 375, breadth 444, depth 666, momentum 0 jscpd, centrality 312, distinctiveness 383, breadth 166, depth 600, momentum 0 dependency-cruiser, centrality 708, distinctiveness 300, breadth 333, depth 600, momentum 0 Nishi Sourcegraph CodeQL jscpd dependency-cruiser

bubble area = breadth · ring = momentum (green rising, red falling, grey until day two) · dashed = category means · axes fitted to the field of play: centrality 200–1000, distinctiveness 250–650 of 0–1000 permil (the full range put every player in one corner)
readability of the 2D cut, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 0 · unresolved labels 0 · mark overlaps 0 (a fact of the data: two players that close are that close) · data spread 691 permil of the plot · quadrant words unseated 0
text contrast, measured with wcag2-ratio (floors from contrast.conf), light theme: labels 16.24 (floor 4.50) · notes 16.24 (floor 4.50) · quadrant words 5.89 (floor 4.50) · tick numerals 5.89 (floor 4.50) · axis titles 5.59 (floor 4.50) · dark theme: labels 13.78 (floor 4.50) · quadrant words 5.55 (floor 4.50) · axis titles 5.97 (floor 4.50) · dark classes under their floor 0 (one figure serves both themes: a dark shortfall is a token to fix, never a class to hide) · classes refused under their floor 0 (a refused class is not drawn; the scale classes are measured, never hidden) · export: SVG PNG (receipt, rendered by the estate's own rasteriser from this page)
Position map, three-dimensional cubeThe same players in an isometric cube. Each axis is fitted to its own field of play and carries numerals on the floor grid and the vertical axis; each bubble drops a dotted line to its floor shadow so height reads as height. Values are in the table that follows. 200 300 400 500 600 700 800 900 1000 250 300 350 400 450 500 550 600 650 100 200 300 400 500 600 700 centrality distinctiveness breadth jscpd: centrality 312, distinctiveness 383, breadth 166 dependency-cruiser: centrality 708, distinctiveness 300, breadth 333 Nishi: centrality 354, distinctiveness 583, breadth 333 CodeQL: centrality 812, distinctiveness 375, breadth 444 Sourcegraph: centrality 854, distinctiveness 493, breadth 574 Nishi Sourcegraph CodeQL jscpd dependency-cruiser
axes fitted: centrality 200–1000 · distinctiveness 250–650 · breadth 100–700 permil · farther bubbles are painted first, nearer ones over them · the floor shadow is each bubble's (x, y) at height 0
readability of the 3D cube, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 1 · unresolved labels 0 · mark overlaps 1 (a fact of the data: two players that close are that close) · data spread 338 permil of the plot
Position map, small multiplesEvery pair of registered axes as one small cut. Each panel fits both axes to the field of play, the dashed lines are the category means, bubble area is breadth and the ring colour is momentum; the legend below names the colours. 200 1000 250 650 distinctiveness vs centrality Nishi: centrality 354, distinctiveness 583 Sourcegraph: centrality 854, distinctiveness 493 CodeQL: centrality 812, distinctiveness 375 jscpd: centrality 312, distinctiveness 383 dependency-cruiser: centrality 708, distinctiveness 300 200 1000 100 700 breadth vs centrality Nishi: centrality 354, breadth 333 Sourcegraph: centrality 854, breadth 574 CodeQL: centrality 812, breadth 444 jscpd: centrality 312, breadth 166 dependency-cruiser: centrality 708, breadth 333 200 1000 550 850 depth vs centrality Nishi: centrality 354, depth 750 Sourcegraph: centrality 854, depth 794 CodeQL: centrality 812, depth 666 jscpd: centrality 312, depth 600 dependency-cruiser: centrality 708, depth 600 200 1000 480 520 momentum vs centrality Nishi: centrality 354, momentum 500 Sourcegraph: centrality 854, momentum 500 CodeQL: centrality 812, momentum 500 jscpd: centrality 312, momentum 500 dependency-cruiser: centrality 708, momentum 500 250 650 100 700 breadth vs distinctiveness Nishi: distinctiveness 583, breadth 333 Sourcegraph: distinctiveness 493, breadth 574 CodeQL: distinctiveness 375, breadth 444 jscpd: distinctiveness 383, breadth 166 dependency-cruiser: distinctiveness 300, breadth 333 250 650 550 850 depth vs distinctiveness Nishi: distinctiveness 583, depth 750 Sourcegraph: distinctiveness 493, depth 794 CodeQL: distinctiveness 375, depth 666 jscpd: distinctiveness 383, depth 600 dependency-cruiser: distinctiveness 300, depth 600 250 650 480 520 momentum vs distinctiveness Nishi: distinctiveness 583, momentum 500 Sourcegraph: distinctiveness 493, momentum 500 CodeQL: distinctiveness 375, momentum 500 jscpd: distinctiveness 383, momentum 500 dependency-cruiser: distinctiveness 300, momentum 500 100 700 550 850 depth vs breadth Nishi: breadth 333, depth 750 Sourcegraph: breadth 574, depth 794 CodeQL: breadth 444, depth 666 jscpd: breadth 166, depth 600 dependency-cruiser: breadth 333, depth 600 100 700 480 520 momentum vs breadth Nishi: breadth 333, momentum 500 Sourcegraph: breadth 574, momentum 500 CodeQL: breadth 444, momentum 500 jscpd: breadth 166, momentum 500 dependency-cruiser: breadth 333, momentum 500 550 850 480 520 momentum vs depth Nishi: depth 750, momentum 500 Sourcegraph: depth 794, momentum 500 CodeQL: depth 666, momentum 500 jscpd: depth 600, momentum 500 dependency-cruiser: depth 600, momentum 500
Nishi Sourcegraph CodeQL jscpd dependency-cruiser
10 panels over 5 registered axes, every pair once (the lower axis on x, the higher on y) · each panel fitted to its own field of play, first and last tick numerals shown · no labels in a small cut, the legend names the colours; the grade below reports the mark terms only (MM summed over the panels, spread averaged)
readability of the small multiples, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 0 · unresolved labels 0 · mark overlaps 3 (a fact of the data: two players that close are that close) · data spread 541 permil of the plot
PlayerQuadrantcentralitydistinctivenessbreadthdepthmomentumRows heldDays on spineFirst seen
NishiUnconventional3545833337500 since 2026-09-238102026-09-15
SourcegraphAspirational8544935747940 since 2026-09-2313102026-09-15
CodeQLMainstream8123754446660 since 2026-09-2312102026-09-15
jscpdPeripheral3123831666000 since 2026-09-235102026-09-15
dependency-cruiserMainstream7083003336000 since 2026-09-2310102026-09-15
DayMatrix rows reviewedPlayers recorded
2026-09-15185
2026-09-16185
2026-09-17185
2026-09-18185
2026-09-19185
2026-09-20185
2026-09-21185
2026-09-22185
2026-09-23185
2026-10-08185

players 5|matrix rows 18|feature mass 48|centrality mean 608|distinctiveness mean 426|axes 5|spine days 10 (shown 10)|rows written today 0|readability defects 2D 0 cube 1|spine knowledge/status/cdmap/genealogy.spine

How to read this evidence. A Nishi source mark records whether the named symbol is declared in the selected source file. It does not establish working behavior or accepted delivery. A watching tag names an expected source entry; discovering it updates source coverage only. A dark tag means the file exists but the named symbol was not found: inspect the source and contract before assuming the capability is missing or renaming code. Peer codes are authored assessments; unassessed means no comparison is established, not absence. Qualification, deployment identity, runtime observations and acceptance must carry their own evidence. Adoption records the catalog's observed path through source, build, promotion, registration and invocation; libraries use importer evidence and gates use declared execution surfaces. A full catalog path does not establish quality, freshness or a successful user outcome. Partial and unknown states retain their stated next action. Census stamps: importers asof 1790637268, gate census asof 1790104131 (unix seconds; -1 = census absent).

Capability matrix — measured against source

◉ authored stronger claim; source present● present◐ partial○ absent? unassessed; excluded from relative comparison · click any capability for its evidence

Peer cell coverage: authored assessed 72, unassessed 0. Authored assessments are not verified outcomes.

CapabilityNishiSourcegraphCodeQLjscpddependency-cruiser
Organ ancestry and relatedness graphMeasured: gen_relatedness exists in runtime/_hdl_build/nx_genealogist.nx, verified at emit. gen_register + gen_relatedness build the module family-tree (relatedness by shared ancestry); ancestry momentum measured 2673 on the 2026-07-10 radar = the hottest frontier signal; the field tracks references + git blame, not ancestry rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: LIB-WIRED importers=4 nonval=1 — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of CodeQL, jscpd, dependency-cruiser; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●●○○○
Genesis lineage traced to the seedMeasured: gen_register exists in runtime/_hdl_build/nx_genealogist.nx, verified at emit. genesis_lineage.tsv + idea_genealogy.tsv record where a capability CAME FROM (its genesis), not its first commit -- provenance to the root; no code-intel tool ships genesis lineage Adoption: LIB-WIRED importers=4 nonval=1 — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of Sourcegraph, CodeQL, jscpd, dependency-cruiser; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
Caller and blast-radius analysisMeasured: oc_referenced exists in runtime/_hdl_build/nx_organ_callers.nx, verified at emit. Sovereign whole-tree reference search, no timeout on 89k files; powers the checked rename method (22 collisions to 14, zero loss, 2026-06-23); Sourcegraph precise refs lead cross-language rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: LIB-WIRED importers=6 nonval=4 — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of CodeQL, jscpd, dependency-cruiser; fully adopted on the estate ladderCons behind Sourcegraph (leads)
●◉◐○◐
Duplicate and shadow-name detectionMeasured: jdn_scan exists in runtime/_hdl_build/nx_janitor_dupname.nx, verified at emit. Finds organs that run the WRONG code by name (name-shadowing); jscpd is the token-clone bar [jscpd]; shared with the janitor census Adoption: LIB-WIRED importers=12 nonval=6 — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of Sourcegraph, CodeQL, dependency-cruiser; fully adopted on the estate ladderCons behind jscpd (leads)
●○○◉○
Prioritized dedup / resolution worklistMeasured: wl_walk exists in runtime/_hdl_build/nx_dupname_worklist.nx, verified at emit. Ranks every collision by external-caller count so the safest are resolved first; the field reports clones, it does not rank the fix order rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: LIB-GATE-ONLY importers=1 — PARTIAL: imported only by validation organs (gates, tests, benches): wire it into a shipping program.
not adopted: imported only by validation organs (gates, tests, benches): wire it into a shipping program
Pros Implementing source symbol found; runtime acceptance separate; ahead of Sourcegraph, CodeQL, dependency-cruiserCons not adopted yet: imported only by validation organs (gates, tests, benches): wire it into a shipping program
●○○●○
Semantic code-graph navigation (go-to-def / refs)Open — watching runtime/nx_code_graph.nx : cg_goto_def, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Sourcegraph cross-repo code intelligence is the bar [sourcegraph-docs]; ours is textual reference search, not a language-server graph
dossierwatching cg_goto_def
Pros none measured yetCons behind Sourcegraph (leads), CodeQL, dependency-cruiser; open contract; expected source declaration not established
○◉●○●
Semantic dataflow / dependency queriesOpen — watching runtime/nx_codeql_query.nx : cq_dataflow_query, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. CodeQL treats code as a queryable database (dataflow, taint) [codeql-docs]; we have no query engine
dossierwatching cq_dataflow_query
Pros none measured yetCons behind Sourcegraph, CodeQL (leads), dependency-cruiser; open contract; expected source declaration not established
○●◉○●
Precise typed call-graph (AST + types)Open — watching runtime/nx_callgraph_ast.nx : cga_typed_edges, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Reference search over-reports (safe but imprecise); a type-resolved call-graph is the named next rung [scip]
dossierwatching cga_typed_edges
Pros none measured yetCons behind Sourcegraph (leads), CodeQL (leads), dependency-cruiser; open contract; expected source declaration not established
○◉◉○●
Cross-language analysisOpen — watching runtime/nx_multilang_graph.nx : ml_parse_lang, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Sourcegraph/CodeQL span 20+ languages; our genealogy is NishiLang-shaped (extension-level for others) rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
dossierwatching ml_parse_lang
Pros none measured yetCons behind Sourcegraph (leads), CodeQL, jscpd, dependency-cruiser (leads); open contract; expected source declaration not established
○◉◐◐◉
Coupling and cohesion / architecture metricsOpen — watching runtime/nx_coupling.nx : cpl_coupling_score, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. NDepend-class coupling scoring; dependency-cruiser rules are partial; absent here rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
dossierwatching cpl_coupling_score
Pros none measured yetCons behind Sourcegraph, CodeQL, dependency-cruiser; open contract; expected source declaration not established
○●●○◐
Clone detection at token / AST granularityOpen — watching runtime/nx_clone_ast.nx : cla_token_clones, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. jscpd token-hash clones are the bar; ours is name-shadow only, not body-similarity [roy-cordy2007]
dossierwatching cla_token_clones
Pros none measured yetCons behind Sourcegraph, CodeQL, jscpd; open contract; expected source declaration not established
○●●◐○
Visual dependency graphOpen — watching runtime/nx_depgraph_svg.nx : dgs_render_svg, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. dependency-cruiser + madge render SVG graphs; ours is TSV data, no diagram rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
dossierwatching dgs_render_svg
Pros none measured yetCons behind Sourcegraph (leads), CodeQL, dependency-cruiser; open contract; expected source declaration not established
○◉●○◐
SBOM and supply-chain attestationOpen — watching runtime/nx_sbom_attest.nx : sba_emit_attest, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. in-toto / SLSA provenance attestation [slsa-spec]; ties to the janitor SBOM gap (mom 1864) and the warden artifact-policy gap [in-toto-attestation]
dossierwatching sba_emit_attest
Pros none measured yetCons behind Sourcegraph, CodeQL, dependency-cruiser; open contract; expected source declaration not established
○●◐○●
Historical churn and hotspot analysisOpen — watching runtime/nx_churn.nx : ch_hotspot_rank, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. git-history churn/hotspot (CodeScene-class) [codescene-docs]; we have lineage but not time-series churn
dossierwatching ch_hotspot_rank
Pros none measured yetCons behind Sourcegraph (leads), CodeQL; open contract; expected source declaration not established
○◉●○○
IDE / CI integrationOpen — watching runtime/nx_gen_ide.nx : gide_serve, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Sourcegraph editor extensions + CodeQL Actions are the bar; our genealogy is console + registry rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
dossierwatching gide_serve
Pros none measured yetCons behind Sourcegraph, CodeQL (leads), jscpd, dependency-cruiser; open contract; expected source declaration not established
○◐◉●◐
Genesis provenance to the seed (ancestry to the root, not the first commit)Source present; authored stronger claim: gen_register in runtime/_hdl_build/nx_genealogist.nx, verified at emit. The spore/genesis lineage records a capability's true origin back to the seed idea; git-based tools start at the first commit -- we start at conception Adoption: LIB-WIRED importers=4 nonval=1 — fully adopted (top of its ladder).
Pros Source symbol found; stronger capability claim is authored; ahead of Sourcegraph, CodeQL, jscpd, dependency-cruiser; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
◉○○○○
Sovereign whole-tree reference search with zero timeoutSource present; authored stronger claim: oc_grep in runtime/_hdl_build/nx_organ_callers.nx, verified at emit. oc_grep walks all 89k files with no external index, no timeout, no SaaS -- the caller/blast-radius engine that made the checked collision resolution possible; the field needs a hosted index Adoption: LIB-WIRED importers=6 nonval=4 — fully adopted (top of its ladder).
dossier
Pros Source symbol found; stronger capability claim is authored; ahead of Sourcegraph, CodeQL, jscpd, dependency-cruiser; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
◉○○○○
Rival-claim provenance. Every Yes, Best or Part mark in a rival column is a claim about someone else's product. A cited row carries a reference mark that resolves to a pinned mirror (the refs gate measures that); an uncited row is an observation read and is badged in its evidence until a reference lands. The badge is the receipt, never the proof: a mark proves a mirror exists, not that the mirror supports the code. The rows are counted below.
Rival claims, counted
ClassCountNote
rows with rival marks15rows carrying a Yes, Best or Part in a rival column
cited8a reference mark resolves to a pinned mirror
uncited7an observation read, badged until a reference lands
rows, summed15RECONCILED: the parts sum to the total 15

Delivery and evidence

Inspect risks, technical debt, rendered observations, experiments and references. Read scope and limitations alongside every result.

Risk register

RiskLikelihood x impactMitigation
A typed call-graph that is wrong is worse than the textual one that over-reports safelypossible x highGN1 done-rule compares against oc_grep as the conservative superset: every precise edge must be in the textual set.
Clone detection with a tuned window fires on every boilerplate headerlikely x mediumGN5 reads its minimum length as data and publishes precision on a labelled sample of the corpus before ranking.
On these two registers. Rows are declared in the domain's plan file and carry the debt id, which is the join key back to the sovereign debt plane — that plane, not this page, is the authority on state. Reconciling them automatically (the regen reading the plane and refreshing these rows) is a named, owed rung; until it lands, treat an id here as a pointer to look up, not a status to trust.
Honest verdict. The Genealogist is FamilySearch-for-code, and its signature capability is one the code-intelligence field does not have: it traces a module's ancestry all the way back to the SEED. genesis_lineage and idea_genealogy record where a capability came from -- its genesis, not just its git history -- so provenance runs to the root, not to the first commit. On top of that it keeps the family tree clean: a relatedness graph, a sovereign whole-tree reference search that does not time out on 89,000 files and drove the collision resolution that took 22 shadow collisions to 14 with zero functionality lost, and duplicate/shadow detection with a prioritized worklist. What it lacks is the field's semantic depth: no language-server code graph (Sourcegraph), no dataflow query engine (CodeQL), no typed AST call-graph, no cross-language analysis, no coupling metrics, no visual dependency graph, no SBOM attestation, no churn/hotspot history. Our analysis is textual-reference and NishiLang-shaped. The climb: an AST-precise call-graph, then coupling metrics, then SBOM attestation (which also serves the janitor and warden). Lineage momentum is the hottest signal on any radar (3121) -- this crew sits on the field's fastest-moving frontier.

Person · product · place — not yet measured for this domain

Every compare carries this layer. Declare knowledge/compare/genealogy.ppp (rows surface|nishi or c1..c4|label|url|connect naming OUR live surface and each rival's front door), run nx_ppp_probe domain genealogy, and this section fills itself on the next beat: the same ruler on both sides — privacy and CX (third-party hosts, tracker classes, cookies, security headers), design and longevity (design hygiene, computed WCAG contrast, render-blocking resources, unsized media, script weight, theme and motion queries), findability (landmarks, skip link, on-site search, breadcrumb, headings, internal links).

The field — discovered, not chosen

Rows written by nx_field_discover from genealogy.seeds: the industry's own lists (Wikipedia wikitext, GitHub topics, awesome lists) read mechanically, every candidate counted across seeds. The matrix columns above are a SEAT'S pick; this band is the population they were picked from, and the stats line measures one against the other. A rival here is a lead, never a verdict — it earns a column when its capabilities are read and pinned.

Discovery receipt. One row per counter the run wrote, in the receipt's own order; the rival rows follow in their own table.
Field discovery, counted
ClassCountNote
seeds4
scanned4
fetched4
reused0
failed0
named4
candidates4
mentions4
capped0
RankRivalSeedsMentionsFirst seedKindLink
1Sourcegraph11col0-sourcegraphnamedhttps://sourcegraph.com/docs
2CodeQL11col1-codeqlnamedhttps://codeql.github.com/docs/
3jscpd11col2-jscpdnamedhttps://github.com/kucherenko/jscpd
4dependency-cruiser11col3-dependencynamedhttps://github.com/sverweij/dependency-cruiser

field candidates 4|shown 4 of 4|matrix columns in the field 4 of 4|discovered rivals with no column 0|malformed rows 0 (counted, never rendered)|read-capped 0

Exclusive and shared capabilities

One capability is graded on one board; every other board references it. The fleet duplicate census (nx_rivalcensus dupes, on the fleetdupes clock row) reads every board's matrix and names each capability graded as a row on two or more boards, with a home derived from evidence: rung when exactly one board's plan contracts the symbol (that board is starred), gates when no plan contracts it and exactly one board's executed gate map runs the organ's gate (that board is plussed), ambiguous when several boards carry the deciding evidence (a decision for their seats), and none when no evidence decides it, with the reason beside it: unmapped (no board of the duplicate declares a gates map; declare the maps) or unproven (a map exists and runs none of the organ's gates; gate the organ on its proving board, or declare it a shared library by policy). A home elsewhere means this board should carry an @xrow reference to the home board's row rather than a graded row of its own; a home here means the other boards should. The table is this board's slice of one estate-wide census: the shape is shared, the rows are the board's.

This board grades 17 capabilities: 16 exclusive to it and 1 shared with other boards. Shared rows on this page: 1 = home here 0 + home elsewhere 0 + ambiguous 0 + undecided 1 + refused 0 (partition 1); undecided = unmapped 0 + unproven 1 + unevidenced 0; homonyms 0; since the previous census: new 0, resolved 0. Census FRESH age_s=6494.

CapabilityOrganBoards grading itHomeRuleEvidenceStanding on this board
gen_registernx_genealogist.nxgenealogy, team—noneunprovenundecided

Gaps from the record — what the estate does that no board carries

The record census (nx_goalmap record) reads the invoked-tool population and every plan queue row and files each organ or directive that NO matrix, plan or gates row names. A row here is a callout the boards missed: adjudicate it onto a board or declare it infrastructure. Census state STALE (age 1395599 s), sources read 4 of 7 declared — a BLIND census is a FLOOR: unread sources can only add rows.

kindnameboardsourceevidence

rows shown 0|this board's directives 0|estate-wide un-boarded organs 452 (listed in full on /compare/ecosystem)|census rows 639|malformed 0 (counted, never rendered)

References

Beyond a link list. Every reference below resolves twice — the publisher's copy and, where banked, the estate's own non-rottable library mirror with a content pin — and carries its evidence class plus the exact claim on this page it grounds. Keyed marks like [key] in the matrix notes jump here. A dash means honestly absent, never assumed.
  1. [sourcegraph-docs] Sourcegraph. Sourcegraph documentation -- Code Search, precise code navigation (go-to-definition, find references), cross-repository code intelligence, editor extensions. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_sourcegraph-docs.html · pin ha221aa6da30b94baab690458850b97a396b9af0912fc217369111aee4ffa05cc · accessed 2026-08-18 · vendor-docGrounds: The Sourcegraph column: Semantic code-graph navigation (go-to-def / refs) and Caller and blast-radius analysis are coded Best (precise refs lead cross-language), with Cross-language analysis, Visual dependency graph and IDE / CI integration -- the hosted-index bar the sovereign oc_grep whole-tree search is contrasted with.
  2. [scip] Sourcegraph. SCIP Code Intelligence Protocol -- the language-agnostic protocol and index format for precise code navigation (successor to LSIF), repository README and protobuf schema. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_scip.html · pin hf2cb4921b42561b6ba331c068400a32a8d8e57ee6ce881d66bf3be5fb702ffd2 · accessed 2026-08-18 · vendor-docGrounds: Semantic code-graph navigation (go-to-def / refs) and Precise typed call-graph (AST + types) -- the concrete artifact behind Sourcegraph's precise navigation: an indexer emits SCIP symbols and occurrences per language, which is the shape the named nx_callgraph_ast rung would have to emit to stop over-reporting from textual reference search.
  3. [codeql-docs] GitHub. CodeQL documentation -- code as a queryable database, the QL language, dataflow and taint-tracking libraries, CodeQL CLI and Actions. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_codeql-docs.html · pin h2382aa728f3dc76e99dccda526ab166d21fff63c193362f5075512a95ecc3466 · accessed 2026-08-18 · vendor-docGrounds: The CodeQL column: Semantic dataflow / dependency queries is coded Best (CodeQL treats code as a queryable database, dataflow and taint) and Precise typed call-graph Best; Nishi has no nx_codeql_query engine, and IDE / CI integration names CodeQL Actions as the bar.
  4. [jscpd] Kucherenko, A. and contributors. jscpd -- copy/paste detector for programming source code (token-hash clone detection across 150+ formats), repository README, v5.x. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_jscpd.html · pin h778988ea93700d898022461fefc6114b5aa069e73f77303de16f40ddc30a740e · accessed 2026-08-18 · vendor-docGrounds: The jscpd column (bar v5.0.14, npm as-of 2026-08-04): Duplicate and shadow-name detection names jscpd as the token-clone bar and Clone detection at token / AST granularity is coded Part for jscpd and _ABSENT_ for Nishi (name-shadow only, not body similarity).
  5. [dependency-cruiser] Verweij, S. and contributors. dependency-cruiser -- validate and visualise dependencies with rules (forbidden, allowed, orphans, cycles) and dot/SVG graph output for JavaScript, TypeScript and CoffeeScript, repository README, v18.x. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_dependency-cruiser.html · pin h558b2d7bf1b65ffb7f62c1094615e5aa10b0a3b1081235ba6fea3fd9ee9250e5 · accessed 2026-08-18 · vendor-docGrounds: The dependency-cruiser column (bar v18.1.1, npm as-of 2026-08-04): Dependency graph of the module tree (dependency-cruiser + Sourcegraph lead on precision and visualization) and Visual dependency graph (dependency-cruiser + madge render SVG; ours is TSV, no diagram) plus its Part on Coupling and cohesion / architecture metrics via rules.
  6. [slsa-spec] OpenSSF SLSA community. SLSA (Supply-chain Levels for Software Artifacts) specification v1.0 -- build provenance levels L1-L3 and the provenance predicate. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_slsa-spec.html · pin h94a6630c0ec4310ad583a35c0d4576a35100a027e1e6dbdd6ba0c9484e593247 · accessed 2026-08-18 · published-standardGrounds: SBOM and supply-chain attestation -- the note names in-toto / SLSA provenance attestation as the bar; this is the SLSA level specification the _ABSENT_ nx_sbom_attest rung would target, shared with the janitor SBOM gap and the warden artifact-policy gap.
  7. [in-toto-attestation] in-toto project (CNCF). in-toto Attestation Framework -- the Statement, Predicate and DSSE envelope specification for authenticated software supply-chain metadata (repository README and spec). Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_in-toto-attestation.html · pin h69361fea3a6b2f0ea0cc20b74ad55cf6419dc6d4066fc07fd43586389fb27280 · accessed 2026-08-18 · published-standardGrounds: SBOM and supply-chain attestation -- the attestation envelope SLSA provenance rides in; the estate already ships nx_coe_intoto and nx_coe_dsse organs, so this spec is the interoperability contract between them and the genealogist's provenance-to-the-seed claim.
  8. [codescene-docs] CodeScene AB. CodeScene documentation -- behavioural code analysis: hotspots, code health, change coupling and knowledge maps from version-control history. Accessed August 2026. publisher · read in our library knowledge/fetched/cmp_genealogy_codescene-docs.html · pin hfbfbc96aad40eb72cedda5a0449cd9139518171ecf27cf3dbc4f4a61839dbbe8 · accessed 2026-08-18 · vendor-docGrounds: Historical churn and hotspot analysis -- the note names git-history churn/hotspot (CodeScene-class) as the bar and Nishi _ABSENT_ (lineage but no time-series churn); these docs define hotspots and change coupling as the measurements an nx_churn rung would reproduce.
  9. [roy-cordy2007] Roy, C.K., Cordy, J.R. A Survey on Software Clone Detection Research. Queen's University School of Computing Technical Report 2007-541, Kingston, Ontario, 2007. Confirmed by search-index read; the queensu.ca host refused the sovereign TLS handshake, so no mirror is claimed. publisher · accessed 2026-08-18 · published-paperGrounds: Clone detection at token / AST granularity -- the survey that fixes the clone taxonomy (Type-1 to Type-4) and the text, token, tree and metrics detection families; jscpd's token-hash approach sits in that taxonomy and the _ABSENT_ nx_clone_ast row is named against it.

generated by nx_swcompare_matrix (sovereign NishiLang organ) from knowledge/compare/genealogy.matrix · source checks show implementation presence; runtime and user-outcome evidence are reported separately · JavaScript supports page controls