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.
  • 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.
  • 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.14.tar.gz (40.6 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.14-py3-none-any.whl (34.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cjm_dev_graph_schema-0.0.14.tar.gz
  • Upload date:
  • Size: 40.6 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.14.tar.gz
Algorithm Hash digest
SHA256 511dcf95b82f054d6d971e9c0bdd701c75ea5abd748570b7b1cbaf833a379fbe
MD5 a3b70efe81af2a686ca38331d68536bd
BLAKE2b-256 9d7702893f99dc7bf0a8bc55c30a3c185de6d2aa54ff242fad827db5cb5be86e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cjm_dev_graph_schema-0.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 6aa5e34faa0fda59e792e022575f8574cafff2522bbe7323ae6b083f8e730fc3
MD5 857b5534fe70877fd3918c6665e6a837
BLAKE2b-256 863a2a1d835b220c9d8f1226ac9f197c5b299c6f8a4c3655bdedbc9cb44db635

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

This release

0.0.14 This release

2 files

0.0.13

2 files

0.0.12

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