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_indexfunction — Index every entity by its key, current name, and each alias.resolve_subject_idfunction — Resolve a subject name to its entity id via the alias index (no guessing).
cjm_dev_graph_schema.identity
assertion_node_idfunction — Assertion identity = (slot, canonical value, actor).cell_node_idfunction — Cell identity = (notebook module, stable cell key).check_node_idfunction — Check identity = (its work item, canonical text) — the same wording on twocode_module_node_idfunction — Code-module identity = (repo_key, module_path).code_symbol_node_idfunction — Code-symbol identity = (enclosing module, qualified name).code_text_node_idfunction — Code-text-region identity = (module, region key).decision_node_idfunction — Decision identity = its canonical statement (idempotent re-records).entity_node_idfunction — Entity identity = (sub-kind, stable key).factslot_node_idfunction — Fact-slot identity = (subject, predicate).message_node_idfunction — Message identity = its capture-source record uuid.note_node_idfunction — Note identity = its stable slug.section_node_idfunction — Section identity = (enclosing Note, heading anchor slug).series_node_idfunction — Series identity = its stable key.session_node_idfunction — Session identity = its stable key (so DECIDED_IN/PRODUCED_IN converge).topic_node_idfunction — Topic identity = its normalized name slug.
cjm_dev_graph_schema.nodes
AssertionNodeclass — One value claimed for a Fact-slot — identified by WHAT is claimed.CellNodeclass — One VERBATIM notebook cell — the lossless source substrate of a notebook module.CheckNodeclass — A definition-of-done check on a work item — a derivable gate, not prose.CodeModuleNodeclass — The code source-type's coarse node: one decomposed.pymodule.CodeSymbolNodeclass — A definition within a module: a function, class, or method.CodeTextNodeclass — A non-def top-level region of a plain-.pymodule — the verbatim substrate BETWEEN symbols.DecisionNodeclass — A decision/conclusion, with rationale recorded as edges, not prose.EntityNodeclass — A first-class subject: a repo/lib, stage, capability, person, or term.FactSlotNodeclass — A(subject, predicate)slot — the home for layered, supersede-able claims.MessageNodeclass — A discourse EVENT on a session spine (DEC 91c47b4a): one user-facing message.NoteNodeclass — The coarse-tier document node: one decomposed markdown/memory file.SectionNodeclass — One heading-delimited section of a Note's body — the navigable unit + anchor target.SeriesNodeclass — An ordered collection/progression a note belongs to (a Quarto series, …).SessionNodeclass — A working session — the home decisions/facts are PRODUCED_IN / DECIDED_IN.TopicNodeclass — A category/tag facet — a thematic-clustering subject shared across notes.
cjm_dev_graph_schema.predicates
Predicateclass — A typed predicate's value-space (the contradiction decidability metadata).active_contradictionfunction — Whether a slot's ACTIVE (non-superseded) values form a hard contradiction.canonical_valuefunction — Canonicalize a value so equal claims collapse to one Assertion.get_predicatefunction — Look up a predicate's value-space; exact entry first, then a prefix FAMILYis_multivaluedfunction — Whether the predicate is a SET slot (distinct values coexist, never conflict).is_orderedfunction — Whether the predicate's values have a "later supersedes earlier" ordering.is_typedfunction — Whether the predicate carries a value-space (exact entry OR prefix family).ordering_supersedesfunction — For an ordered predicate, doesnew_valuesupersedeold_value?soft_conflictfunction — Whether an UNTYPED slot's active values disagree (a worklist candidate).values_conflictfunction — Whether two values are a HARD contradiction under the value-space.
cjm_dev_graph_schema.vocab
DevNodeKindsclass — Node labels of the dev/decision-provenance schema (the locked model).DevRelationsclass — 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
511dcf95b82f054d6d971e9c0bdd701c75ea5abd748570b7b1cbaf833a379fbe
|
|
| MD5 |
a3b70efe81af2a686ca38331d68536bd
|
|
| BLAKE2b-256 |
9d7702893f99dc7bf0a8bc55c30a3c185de6d2aa54ff242fad827db5cb5be86e
|
File details
Details for the file cjm_dev_graph_schema-0.0.14-py3-none-any.whl.
File metadata
- Download URL: cjm_dev_graph_schema-0.0.14-py3-none-any.whl
- Upload date:
- Size: 34.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6aa5e34faa0fda59e792e022575f8574cafff2522bbe7323ae6b083f8e730fc3
|
|
| MD5 |
857b5534fe70877fd3918c6665e6a837
|
|
| BLAKE2b-256 |
863a2a1d835b220c9d8f1226ac9f197c5b299c6f8a4c3655bdedbc9cb44db635
|