Skip to main content

cjm-dev-graph-schema

Development/decision-provenance schema for context graphs: Decision, Fact-slot/Assertion, Evidence, Thread, Session, Procedure, and Entity node kinds with deterministic identity and overlay/reasoning edges — the dev-domain sibling to cjm-transcript-graph-schema for graphing a project's own evolution.

Modules

  • cjm_dev_graph_schema.__init__
  • cjm_dev_graph_schema.aliases — Rename-stable subject resolution (the A+aliases identity machinery).
  • cjm_dev_graph_schema.identity — Deterministic node-id helpers for the dev/decision-provenance domain.
  • cjm_dev_graph_schema.nodes — Typed node dataclasses for the dev schema (coarse + fine tier).
  • cjm_dev_graph_schema.predicates — Typed predicates + their value-space metadata (the dedup decidability layer).
  • cjm_dev_graph_schema.vocab — The reserved node-kind and edge-relation vocabulary for the dev/decision-provenance domain.

API

cjm_dev_graph_schema.aliases

  • build_alias_index function — Index every entity by its key, current name, and each alias.
  • resolve_subject_id function — Resolve a subject name to its entity id via the alias index (no guessing).

cjm_dev_graph_schema.identity

  • assertion_node_id function — Assertion identity = (slot, canonical value, actor).
  • cell_node_id function — Cell identity = (notebook module, stable cell key).
  • check_node_id function — Check identity = (its work item, canonical text) — the same wording on two
  • code_module_node_id function — Code-module identity = (repo_key, module_path).
  • code_symbol_node_id function — Code-symbol identity = (enclosing module, qualified name).
  • code_text_node_id function — Code-text-region identity = (module, region key).
  • decision_node_id function — Decision identity = its canonical statement (idempotent re-records).
  • entity_node_id function — Entity identity = (sub-kind, stable key).
  • factslot_node_id function — Fact-slot identity = (subject, predicate).
  • note_node_id function — Note identity = its stable slug.
  • section_node_id function — Section identity = (enclosing Note, heading anchor slug).
  • series_node_id function — Series identity = its stable key.
  • session_node_id function — Session identity = its stable key (so DECIDED_IN/PRODUCED_IN converge).
  • topic_node_id function — Topic identity = its normalized name slug.

cjm_dev_graph_schema.nodes

  • AssertionNode class — One value claimed for a Fact-slot — identified by WHAT is claimed.
  • CellNode class — One VERBATIM notebook cell — the lossless source substrate of a notebook module.
  • CheckNode class — A definition-of-done check on a work item — a derivable gate, not prose.
  • CodeModuleNode class — The code source-type's coarse node: one decomposed .py module.
  • CodeSymbolNode class — A definition within a module: a function, class, or method.
  • CodeTextNode class — A non-def top-level region of a plain-.py module — the verbatim substrate BETWEEN symbols.
  • DecisionNode class — A decision/conclusion, with rationale recorded as edges, not prose.
  • EntityNode class — A first-class subject: a repo/lib, stage, capability, person, or term.
  • FactSlotNode class — A (subject, predicate) slot — the home for layered, supersede-able claims.
  • NoteNode class — The coarse-tier document node: one decomposed markdown/memory file.
  • SectionNode class — One heading-delimited section of a Note's body — the navigable unit + anchor target.
  • SeriesNode class — An ordered collection/progression a note belongs to (a Quarto series, …).
  • SessionNode class — A working session — the home decisions/facts are PRODUCED_IN / DECIDED_IN.
  • TopicNode class — A category/tag facet — a thematic-clustering subject shared across notes.

cjm_dev_graph_schema.predicates

  • Predicate class — A typed predicate's value-space (the contradiction decidability metadata).
  • active_contradiction function — Whether a slot's ACTIVE (non-superseded) values form a hard contradiction.
  • canonical_value function — Canonicalize a value so equal claims collapse to one Assertion.
  • get_predicate function — Look up a predicate's value-space; exact entry first, then a prefix FAMILY
  • is_multivalued function — Whether the predicate is a SET slot (distinct values coexist, never conflict).
  • is_ordered function — Whether the predicate's values have a "later supersedes earlier" ordering.
  • is_typed function — Whether the predicate carries a value-space (exact entry OR prefix family).
  • ordering_supersedes function — For an ordered predicate, does new_value supersede old_value?
  • soft_conflict function — Whether an UNTYPED slot's active values disagree (a worklist candidate).
  • values_conflict function — Whether two values are a HARD contradiction under the value-space.

cjm_dev_graph_schema.vocab

  • DevNodeKinds class — Node labels of the dev/decision-provenance schema (the locked model).
  • DevRelations class — Dev-domain edge relations (reserved up front).

Dependencies

Depends on: cjm-context-graph-layer, cjm-context-graph-primitives Used by: cjm-context-graph-projection, cjm-markdown-decompose-core, cjm-notebook-decompose-core, cjm-python-decompose-core

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cjm_dev_graph_schema-0.0.12.tar.gz (38.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cjm_dev_graph_schema-0.0.12-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file cjm_dev_graph_schema-0.0.12.tar.gz.

File metadata

  • Download URL: cjm_dev_graph_schema-0.0.12.tar.gz
  • Upload date:
  • Size: 38.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for cjm_dev_graph_schema-0.0.12.tar.gz
Algorithm Hash digest
SHA256 8bfc50e387721e45019402e2a1fd714c179d38c23d41733860939388bd5ae6ba
MD5 77ba58660db3c2ad8875bdd714cc444b
BLAKE2b-256 6e110431dd33c608072702ee999eda055a49aff5d887dfac96386677f528f1c7

See more details on using hashes here.

File details

Details for the file cjm_dev_graph_schema-0.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for cjm_dev_graph_schema-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 6913678f695683a3da63bb12dfaa1ee8a1bbc680606b9a270a291f8ffdf5a085
MD5 4b75399201a4990816904f8b0e7b05cb
BLAKE2b-256 f69e92be05f86ae8eeb4fd970e70779cfdabf6783e139d5d7de7a22a453538cd

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.17

2 files

0.0.16

2 files

0.0.15

2 files

0.0.14

2 files

0.0.13

2 files

This release

0.0.12 This release

2 files

0.0.11

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page