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 = (module at birth, qualified name at birth[, generation]).
  • code_text_node_id function — Code-text-region identity = (module, region key).
  • decision_node_id function — Decision identity = its canonical statement (idempotent re-records).
  • deliverable_type_node_id function — Deliverable-type identity = its slug, so re-minting the profile UPSERTS one node
  • 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.
  • point_node_id function — Point identity = (owner, point key) — never its text, kind, or position.
  • point_set_node_id function — PointSet identity = (sibling graph key, Source id, unit key) — the source unit whose
  • 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.
  • DeliverableTypeNode class — A deliverable TYPE's profile as graph DATA (ruling a7262fe7 (1)) — the display-rule
  • 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.
  • PointNode class — A typed deliverable's SUBSTANCE atom (ruling a7262fe7): the smallest statement
  • PointSetNode class — A Source unit's POINT STORE (ruling 96be1528 (P)): the node that OWNS the substance
  • 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,
  • judged_edge function — One judgment of the JUDGED family (design ae698640 (5), generalizing eefda2dd (3)'s facet
  • judged_related_edge function — One judged related-post pair (design e09e262b). The pair is ORDERED -- relatedness is
  • lineage_edge function — One step of an artifact's LINEAGE (design ae698640 (1)): the ONNX export from the checkpoint,
  • parse_foreign_ref function — Split a <graph key>:<id> reference token; None for a plain local id / anything else.
  • placed_edge function — The deliverable's PER-POINT OVERLAY on a point it renders (ruling 96be1528 (3)/(7)).
  • record_part_of_edge function — A PART_OF landed by an Entity record (design ae698640 (3) / (4)): a concept under its
  • relation_edge function — One path-model relation with its per-pair data (design ae698640 (5)). A pair holds one edge
  • series_member_edge function — One series membership with its AUTHORED position (DEC 72d669c5 (4)).
  • site_link_edge function — An in-body site link, RESOLVED (DEC 72d669c5 (1)): the post-replay resolve pass mints
  • supports_edge function — One support of a claim with its kind (design de808eae (1), amendment 98e99fe5 (2)).
  • unit_part_of_edge function — A unit's membership in its work (design leg 4a4ef27e (2)), landed by the entity op
  • verified_on_edge function — One verification with its evidence (design 8cbdc883 (7), amendment c450133a (2)).
  • work_member_edge function — A metabolized source's place in its work (design 5de7fae9 (4), design leg 4a4ef27e (2)):
  • work_provenance_edge function — An archive deliverable's provenance (design 5de7fae9 (3), design leg 4a4ef27e (2)): ONE

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.
  • citation_parts function — The inverse of citation_value; a malformed value reads as no parts.
  • citation_value function — A citation's parts as the fact's value -- sorted keys, compact separators, blanks dropped;
  • 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_terminal function — Whether value is a TERMINAL side-state of an ordered enum (item 140981e9): off the
  • 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?
  • resources_links function — The inverse of resources_value; a malformed value reads as no links.
  • resources_value function — A source's links as the fact's value -- each link's fields sorted, the links in role then
  • soft_conflict function — Whether an UNTYPED slot's active values disagree (a worklist candidate).
  • traffic_of function — The inverse of traffic_value; a malformed value reads as no measure.
  • traffic_value function — A traffic measure as the fact's value -- sorted keys, compact separators. Refuses a missing
  • transition_matches function — Does a step match a stage's transition (ae698640 (2))? Its outputs include the transition's
  • values_conflict function — Whether two values are a HARD contradiction under the value-space.
  • version_key function — A component version's ordering key for staleness: its runs of digits and letters in order,
  • versions_of function — The inverse of versions_value; a malformed value reads as no versions.
  • versions_value function — An environment's versions as the fact's value -- sorted keys, compact separators, blanks

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

Metadata

Release files for cjm-dev-graph-schema 0.0.37

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.37
File Size Uploaded
cjm_dev_graph_schema-0.0.37.tar.gz 83.9 kB Details

Built distribution (wheel)

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

Total release size: 149.7 kB

Release files / cjm_dev_graph_schema-0.0.37.tar.gz

Download URL cjm_dev_graph_schema-0.0.37.tar.gz
Size 83.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f1a79c27c465953a1ab40cf1a249f363931bb236a2f3aad9e68367bf4d941038
BLAKE2b-256 checksum
How to use checksums
e1ab9ff4298a8a9b28654e99d5b0c872c7aeb0264c6881a9047810897765a932
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.37-py3-none-any.whl

Download URL cjm_dev_graph_schema-0.0.37-py3-none-any.whl
Size 65.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5b5229febee1ec4ded3f522e49481302d0187e5d5b86df8da2d043104a8d7987
BLAKE2b-256 checksum
How to use checksums
f330239bd03f5728060ad8533f9f154cb9391f12ab58afb8a53498139cf86bac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12
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