Zenith Ontology / Historical release
v0.5.0
Source release date: September 14, 2026
Release notes
Zenith Ontology v0.5.0
v0.5.0 introduces **Arenas**: continuing areas of responsibility that group Initiatives and parentless Tasks through CONTAINS_WORK. Todo is the common base; Task is the concrete executable to-do in the Work interface.
Direct membership is optional and limited to one Arena per member. Work descendants inherit their root's Arena without additional stored membership edges. The existing Initiative → Project → Issue → Task hierarchy stays intact. See arenas.md and the normative arena-contract.json for eligibility, parent changes, moves, archival, and invalid-graph behavior.
The Rolodex now prefers **Entity** as the directory base for Person, Agent, and Organization. Actor remains an equivalent compatibility name with the same published identifier. Directory membership does not create authority.
Arena and Rolodex additions have runtimeLabel: false. This release adds no Neo4j label, constraint, migration, Work kind, HTTP route, or monitor control. Existing operation schemas and persisted Work/receipt decoders are unchanged. The v0.1.0 through v0.4.0 bundles remain byte-identical and supported.
Compatibility
Zenith ontology v0.5.0 compatibility
v0.5.0 adds Arena grouping and the preferred Rolodex name Entity. Published v0.1.0, v0.2.0, v0.3.0, and v0.4.0 bundles remain supported and byte-identical.
Arenais a new canonical class outsideTodo, withruntimeLabel: false.CONTAINS_WORKis an Arena-to-Work predicate. The normativearena-contract.jsonprofile restricts direct members to parentless Initiatives and Tasks, with zero or one direct Arena per member.- Existing Work parentage remains
HAS_CHILD; Arena membership does not broaden the Initiative → Project → Issue → Task parent rules. Entityis the preferred common directory base forPerson,Agent, andOrganization. The publishedActoridentifier remains present with anowl:equivalentClasslink toEntity. Consumers need not rewrite existing Actor references or remint identities. The current JSON-LD context addsequivalentClassas an ID-valued OWL term.- All Rolodex classes and the compatibility name remain non-runtime.
- Existing
actor_idstrings, operation names, request/response schemas, Work kinds, receipt decoding, runtime labels, constraints, migrations, lifecycle rules, and authorization remain unchanged.
An old consumer can retain its v0.4.0 bundle and Actor vocabulary. A consumer adopting v0.5.0 should understand the Entity compatibility mapping and resolve the new Arena profile from the manifest before interpreting membership. The JSON-LD domain/range alone does not express the parentless or cardinality rules. Consumers must keep pinning both version and manifest bundle digest.
This release supplies vocabulary and containment rules, not a live Arena API, storage schema, or UI. No stored data migration is required.
Changes since v0.4.0
Compares the exact published bundles. Expand an entry to inspect its before and after values. Term counts exclude the ontology metadata record. File comparisons use manifest checksums; prose and runtime rules can change without new terms.
Vocabulary terms
+3 added · 5 changed · −0 removed
Added
zn:Arena
Before
Absent
After
{ "@id": "zn:Arena", "@type": "owl:Class", "label": "Arena", "comment": "A continuing area of responsibility grouping Initiatives and standalone Tasks. Arena membership is separate from Work parentage; direct members have no incoming HAS_CHILD work-parent edge. Canonical vocabulary only; see arena-contract.json.", "runtimeLabel": false }zn:Entity
Before
Absent
After
{ "@id": "zn:Entity", "@type": "owl:Class", "label": "Entity", "comment": "Common directory and provenance identity for a person, agent, organization, or other named participant in work; not an authentication Subject or credential.", "runtimeLabel": false }zn:CONTAINS_WORK
Before
Absent
After
{ "@id": "zn:CONTAINS_WORK", "@type": "owl:ObjectProperty", "label": "contains work", "domain": "zn:Arena", "range": "zn:Todo", "comment": "Direct Arena membership, restricted by arena-contract.json to parentless Initiative or Task records. Optional, at most one direct Arena per member; not a HAS_CHILD parent, authority grant, or runtime relationship in v0.5.0." }
Changed
zn:HandoffFields: comment
Before
{ "@id": "zn:Handoff", "@type": "owl:Class", "label": "Handoff", "comment": "Context package transferred across actors or sessions.", "runtimeLabel": true }After
{ "@id": "zn:Handoff", "@type": "owl:Class", "label": "Handoff", "comment": "Context package transferred across entities or sessions.", "runtimeLabel": true }zn:PersonFields: comment, subClassOf
Before
{ "@id": "zn:Person", "@type": "owl:Class", "label": "Person", "comment": "Human Actor.", "subClassOf": "zn:Actor", "runtimeLabel": false }After
{ "@id": "zn:Person", "@type": "owl:Class", "label": "Person", "comment": "Human entity.", "subClassOf": "zn:Entity", "runtimeLabel": false }zn:AgentFields: comment, subClassOf
Before
{ "@id": "zn:Agent", "@type": "owl:Class", "label": "Agent", "comment": "Software, AI, service, or other automated Actor.", "subClassOf": "zn:Actor", "runtimeLabel": false }After
{ "@id": "zn:Agent", "@type": "owl:Class", "label": "Agent", "comment": "Software, AI, service, or other automated entity.", "subClassOf": "zn:Entity", "runtimeLabel": false }zn:OrganizationFields: comment, subClassOf
Before
{ "@id": "zn:Organization", "@type": "owl:Class", "label": "Organization", "comment": "Collective Actor such as a company, project, institution, or working group.", "subClassOf": "zn:Actor", "runtimeLabel": false }After
{ "@id": "zn:Organization", "@type": "owl:Class", "label": "Organization", "comment": "Collective entity such as a company, project, institution, or working group.", "subClassOf": "zn:Entity", "runtimeLabel": false }zn:ActorFields: comment, equivalentClass
Before
{ "@id": "zn:Actor", "@type": "owl:Class", "label": "Actor", "comment": "Common directory and provenance identity for an entity that can participate in work; not an authentication Subject or credential.", "runtimeLabel": false }After
{ "@id": "zn:Actor", "@type": "owl:Class", "label": "Actor", "comment": "Directory class name published in v0.4.0, equivalent to Entity. Entity is preferred in v0.5.0; this identifier remains readable and does not denote an authentication Subject or credential.", "equivalentClass": "zn:Entity", "runtimeLabel": false }
Operations
+0 added · 0 changed · −0 removed
No changes in this category.
Bundle files
+2 added · 11 changed · −0 removed
Added
arena-contract.json
Before
Absent
After
{ "path": "arena-contract.json", "sha256": "7b9902696be8b546479e185f6f76802884996dd645681f556c41405c1a6677ea" }arenas.md
Before
Absent
After
{ "path": "arenas.md", "sha256": "44ba495b7ff23a45222df4f92b08bb43487c0e8cd40b06ef1dd3b8bdcf7f2b37" }
Changed
README.mdFields: sha256
Before
{ "path": "README.md", "sha256": "8edcaef89bbf97f300ca07d3c2d6ad6c2ec4f9f9ae714d762b725cc71558bf59" }After
{ "path": "README.md", "sha256": "aa8af7888f667850633cae4da5ee1c6907f2b787b0f62c22de92c586b605c075" }classes.mdFields: sha256
Before
{ "path": "classes.md", "sha256": "0f64d1d8910aa4d91d844f99b0732d7fa4f1d04c6e71a099146e520176efab89" }After
{ "path": "classes.md", "sha256": "37bd96cefaa2647cfb42359854a4ffb9022d5a39e4fe957b837cabadd7cc8a8c" }compatibility.mdFields: sha256
Before
{ "path": "compatibility.md", "sha256": "45bc3aecfb4fd5f05f211f23d941b386abcb7187da5f4ae22bbec4ce5569820d" }After
{ "path": "compatibility.md", "sha256": "28dd5767ca82b09b29f64e2951de297b8e58cdb10c2303cd09a9ea2a2c59c488" }context.jsonldFields: sha256
Before
{ "path": "context.jsonld", "sha256": "45bae6e66df778892ea90950dd3d0aab06371701a1d3f1e79d4d096fc90a46e8" }After
{ "path": "context.jsonld", "sha256": "bcb4c213b415cc4058361d7c6dbf28b90cb40a39d53ebefe506990c8dca91d6c" }invariants.mdFields: sha256
Before
{ "path": "invariants.md", "sha256": "7f6e8393a15982e7ef915d6de1a607473e219da36c9713366aafcc5cfa5f3f8c" }After
{ "path": "invariants.md", "sha256": "9ed314aa157fd73e6d38d4a8cfa8c9f8a9832f3fa0f95542d9ac8866c99c3336" }ontology.jsonldFields: sha256
Before
{ "path": "ontology.jsonld", "sha256": "cddd86b90c4161fb25f6206f1460ff9cde0520c36eb8aaacdf64699e3e4f96b7" }After
{ "path": "ontology.jsonld", "sha256": "d2020f4a63f242a36d60249c9d0bbd7fa0c7ba340460a74d09d53d78b18b2233" }operations.jsonFields: sha256
Before
{ "path": "operations.json", "sha256": "96820a6327f48dce2c3f2fad6752d4e47b5e3753ac86229ff266dc9788955670" }After
{ "path": "operations.json", "sha256": "0a4950deda7cc090897d756adebb335994c6c5bcc517903c3a85507f3900bd19" }predicates.mdFields: sha256
Before
{ "path": "predicates.md", "sha256": "2c72fdb96baea91b729aa0f6e8f38ccf91c45ca46eae5d31b83cbe0a4ff2a093" }After
{ "path": "predicates.md", "sha256": "095a820c2a9fda68dee23263895aa4deed7bb8b5115323ef65d374b339ce836d" }readiness.mdFields: sha256
Before
{ "path": "readiness.md", "sha256": "233f6e52611c41c4b9f3ec81b9924c3b2a89e6851490b485cd749a59682c4503" }After
{ "path": "readiness.md", "sha256": "922235c94f09e2b5c13576678feaa808451043b55589e364e8c45b70a3bc6198" }repository-contract.jsonFields: sha256
Before
{ "path": "repository-contract.json", "sha256": "17c97eaae310357431062638bcbc53fb8bb51755e88b53212dad684964b30e16" }After
{ "path": "repository-contract.json", "sha256": "7397dd5c8d7aa92d58a86ce6e8a5dccdc1e8eff926f27dbea4889b7e6940d09c" }rolodex.mdFields: sha256
Before
{ "path": "rolodex.md", "sha256": "c7ecc27e99dc3f30714f203c6665ec67630cd9d2d6033789bbabc6d3c20219c5" }After
{ "path": "rolodex.md", "sha256": "996e8d30c4b96e11f3cc3f74079f32f84b6ff1a121cd363e550b424264ea4eb3" }
Source history
This release was already present in the first public repository snapshot. The commit below records its public availability, not its original authoring date. Notes and history are pinned to source revision c72770e.
- Release Devgraph public beta under AGPLv3 (ca0d95f)
September 15, 2026
Bundle SHA-256: 87f5e114b05de6523799476afb9406ee3a9d664a71d167277863862a0c0c482a