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).
  • message_node_id function — Message identity = its capture-source record uuid.
  • note_node_id function — Note identity = its stable slug.
  • reference_node_id function — Reference identity = (sibling graph key, foreign node id).
  • 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.
  • MessageNode class — A discourse EVENT on a session spine (DEC 91c47b4a): one user-facing message.
  • NoteNode class — The coarse-tier document node: one decomposed markdown/memory file.
  • ReferenceNode class — A LOCAL stand-in for a node in a sibling graph — the cross-graph reference (0154f5e4).
  • 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.
  • foreign_content_hash function — The content a Reference OBSERVES: the foreign node's label + its properties, canonically
  • foreign_display_title function — Best-effort display handle for a foreign node: title/name/text-ish fields first,
  • parse_foreign_ref function — Split a <graph key>:<id> reference token; None for a plain local id / anything else.

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_approval function — Whether an assertion is approval-class (APPROVAL_CLASS — schema data, design 40622922).
  • 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

Release files for cjm-dev-graph-schema 0.0.18

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cjm-dev-graph-schema 0.0.18
File Size Uploaded
cjm_dev_graph_schema-0.0.18.tar.gz 46.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cjm-dev-graph-schema 0.0.18
File Interpreter ABI Platform
cjm_dev_graph_schema-0.0.18-py3-none-any.whl Python 3 none any Details

Total release size: 85.5 kB

Release files / cjm_dev_graph_schema-0.0.18.tar.gz

Download URL cjm_dev_graph_schema-0.0.18.tar.gz
Size 46.5 kB
Tags Source
SHA-256 checksum
How to use checksums
52ffb11d9d9273bcb6269e0552f9028d105a256df5659b04a71662b2fc85de02
BLAKE2b-256 checksum
How to use checksums
b53120772f46f9831fd11a904300de95fc950799256d2d8f9b6b00187b3d6cf5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / cjm_dev_graph_schema-0.0.18-py3-none-any.whl

Download URL cjm_dev_graph_schema-0.0.18-py3-none-any.whl
Size 39.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4cb79172ce156a988c395c900d0ac60bc9363db37326171d8ae07b92c5759ad1
BLAKE2b-256 checksum
How to use checksums
ae20cd36dccbf7c5146b8f6b93e7988330f71aee5f0c88e91b59b45e39d1658b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

0.0.28

2 release files

This release

0.0.18 This release

2 release files

0.0.13

2 release files

0.0.12

2 release 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