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.13.tar.gz (40.4 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.13-py3-none-any.whl (34.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cjm_dev_graph_schema-0.0.13.tar.gz
  • Upload date:
  • Size: 40.4 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.13.tar.gz
Algorithm Hash digest
SHA256 f93c59cfa6e93bb41f0d2d9916ae361f55d4a7d112bde69930adb08e7f696432
MD5 e5652bbc181041b54d8815e1e76f3ae2
BLAKE2b-256 5167e50f5d75227c69aece4e1af42dbf9be94cee976e9af8dfba53f8c66eee03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cjm_dev_graph_schema-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 18cef802afc4b2222f708ba557e4fb2c9167389ed3b23b04058635fabd737084
MD5 91eeed1414c1e325648e61be14e6f6f7
BLAKE2b-256 3545c638264760cca12a02b816d23b3ef41619aff7085bcaceff65cb193df486

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

This release

0.0.13 This release

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