Skip to content

Releases: DreamLab-AI/ontomark

ontomark 0.4.0

Choose a tag to compare

@jjohare jjohare released this 17 Oct 09:43

Any Obsidian vault is a repository (ADR-OM-008). ontomark --repo <vault> validate | build | find … now works on a plain vault with no ontology/ folder: the generic profile applies, the vault root is the content root, and templates/, bases/, assets/, journals/ and dot-folders are excluded. Vault folder names (layout.knowledge, layout.working) and the generation-id prefix (generation.prefix) are profile settings; the DreamLab estate pins its old values, so estate output is byte-identical to 0.3.0 (conformance parity: 0 differences).

Installable from crates.io: cargo install ontomark. The crates ontomark-compile, ontomark-profile-estate and ontomark are at 0.4.0; every crate has a README and warning-free rustdoc describing the vault layout.

Fixes: the vault_layout and defined_classes tests are gated behind whelk-el, so --no-default-features builds pass again; a feature-gate test now fails if any reasoner-importing test lacks the gate.

Assets: ontomark-x86_64-unknown-linux-gnu (static musl PIE) and ontomark-engine-0.4.0.tar.gz (wasm engine for the Obsidian plugin).

ontomark 0.3.0

Choose a tag to compare

@jjohare jjohare released this 16 Oct 13:42

Two changes, both recorded in ADR-OM-007.

Flat Obsidian vaults. The compiler reads pages from the vault root; the Logseq-era pages/ folder is no longer expected or accepted. templates/, bases/, assets/, journals/ and dot-folders are excluded by default and the profile can extend the list (layout.excluded). Page ids, IRIs and the published URL layout are unchanged: a build of the flattened visionGraph is byte-identical in the staged site to a build of the old layout with 0.2.x.

The vault verbs. ontomark find | retrieve | tree | edit | create | apply replace the same verbs of VisionClaw's deprecated vault CLI, with the same flags, JSON shapes and exit codes; 23 of 23 corpus queries byte-identical.

Assets: ontomark-x86_64-unknown-linux-gnu is a static musl PIE (runs on glibc and Nix hosts); ontomark-engine-0.3.0.tar.gz is the wasm engine for the Obsidian plugin. ontomark-compile 0.3.0 is on crates.io.

ontomark 0.2.2

Choose a tag to compare

@jjohare jjohare released this 13 Oct 10:43

Engine-only patch release for the Obsidian plugin. The CLI binary is not rebuilt for 0.2.2; use 0.2.0.

  • A relation written as a single quoted link (subclass-of: "[[Animal]]") now gets an info-level scalar_relation note. The edge is still asserted and nothing in the note changes. Obsidian stores a lone value as text, so Bases list filters such as note["subclass-of"].contains(this.file.asLink()) skip it; the note says to write a list. Checked in Obsidian 1.14.4: that base returns the block-list and flow-list notes and skips the scalar one. A hyphenated property needs the note["…"] form; a bare subclass-of.contains(…) is read as subtraction and matches nothing.
  • Severity::Info is added to the wasm wire enum (serialised as "info"). Additive; consumers that only know error and warning should treat an unknown severity as informational.

Asset: ontomark-engine-0.2.2.tar.gz, SHA-256 dfa8d34450e14c9062742e31308ba9386e06ab5b6e2599a947c45d9add29b90c, source 150b42053dd9641163ec4d574c9b21e02c06009e.

ontomark 0.2.1

Choose a tag to compare

@jjohare jjohare released this 13 Oct 01:20

Engine-only patch release for the Obsidian plugin. The CLI binary is not rebuilt for 0.2.1; use 0.2.0.

  • An inline unquoted wikilink (subclass-of: [[Animal]]) is now recovered and asserted, with an unquoted_wikilink warning that points at the exact span and says to quote it. Previously only the block-list form (- [[Animal]]) was recovered.
  • When several unquoted links share one inline list, or the value cannot be recovered, relation_not_wikilink now says to quote each link instead of claiming the value is not a wikilink.
  • ontomark-parse 0.1.2 carries the parser change (not yet published to crates.io).

Asset: ontomark-engine-0.2.1.tar.gz, SHA-256 29f034a36255bb0c7b1551f442fc5541a9a038da8f966f5ca0170815a7ed8978, source 90effefefbf115f4acbbc27b96934af95433cf29.

ontomark 0.2.0

Choose a tag to compare

@jjohare jjohare released this 12 Oct 18:31

One producer, two scopes. The compile library, CLI and wasm engine move to 0.2.0; the parser, NGG1 and ingest crates are unchanged and stay at their published versions.

CLI (ontomark-x86_64-unknown-linux-gnu, static musl, runs on glibc and Nix hosts)

  • build --scope machine: a second bundle for machine consumers (VisionClaw's force projection) that carries public working/ notes as plain records beside the knowledge ontology. data/ is content-identical to the public bundle; ontology_digest is equal by design. Refuses alongside --publish-out, --vault working|all, --no-redact-private-links, and when the profile has redaction off. ADR-OM-005 decision 4.
  • build --with-rvdb: emits data/ontology-corpus.records.jsonl (contract C3). Pair with the Loom's promote_vault_build to produce ontology-corpus.rvdb.
  • Exit 2 now covers: unknown --tier / --severity, scope conflicts, an unsatisfiable corpus (typed Unsatisfiable), a non-boolean public: anywhere in the selected vaults, and a credential in published frontmatter as well as body.
  • gate and conflicts run over every selected vault under --vault all (previously the first only).
  • The prose redactor fails closed: a marker set that does not compile refuses the build instead of publishing unredacted.
  • content_digest covers every byte the build read (all selected vaults plus the vocabulary); git_dirty paths match. Both generation markers are listed among the stamped artefacts; publish/ files are hashed when --publish-out is set.
  • Atomic publish_out replacement (stage beside, swap).

Engine (ontomark-engine-0.2.0.tar.gz, for ontomark-obsidian)

  • ingest_plan / ingest_accept: the assisted-ingest contract (ontomark-ingest/facts/1). The host supplies the model; the engine grounds names against the vault vocabulary, requires located evidence, and returns one digest-bound patch plus named refusals. ADR-OM-003.
  • The engine profile is bridged to the typed model (ontomark_model::Profile), with native/WASM parity tests.
  • Marker: scope field (absent = public). Field-by-field readers are unaffected.

Library (ontomark-compile 0.2.0 on crates.io)

  • build::Scope, Options.scope, Report.machine (MachineSummary { working_records, yielded }), ScopeConflict.
  • ProseRedactor::new is fallible; the census scans frontmatter and body.
  • Reconciliation of the OM-00 anomaly register (VisionFlow docs/diagrams/ontomark/00): 23 items, all with reproduction tests.

Verification

856 tests; clippy and strict rustdoc clean; conformance goldens unchanged except the version string. Real-corpus builds in both scopes on visionGraph 45976a8c7; the public bundle is content-identical to the previous release's output. The Loom façade on the estate serves this generation.

Also published today: ontomark-model 0.1.1, ontomark-ingest 0.1.0.

ontomark v0.1.0-rc.1

ontomark v0.1.0-rc.1 Pre-release
Pre-release

Choose a tag to compare

@jjohare jjohare released this 11 Oct 20:28

Portable Linux CLI prerelease from clean source commit 21cd9ff.

Builds Markdown ontology vaults into RDF, JSON-LD, SHACL, indexes, page APIs and NGG1 graph tiers. Public projections redact private targets and aliases; guarded parsing and the offline plugin are integrated in the repository.

Validation: 746 native tests passed (7 ignored), formatting and clippy passed; reasoner WASM tests passed; plugin checks passed using an offline Obsidian runtime shim. The attached binary was built in rust:1.96-bookworm, ran on Debian 12 without network access, and matched the committed legacy corpus with zero differences over 32 artefact lines and 12 command outputs in compatibility mode.

SHA-256: 7b15c2858f1715e561c0889dbaa50164e5a404ee7f8ed1d6cfd9da41daeb1d45

The reasoner implements a subset of OWL 2 EL and reports unsupported or dropped constructs. The compiler retains its legacy classification path in this prerelease. Remaining estate commands and desktop Obsidian acceptance are pending. The binary reports version 0.1.0; the release tag identifies this prerelease.

Upstream attribution accompanies both frozen binary distributions in the attached UPSTREAMS.md and THIRD-PARTY-NOTICES.md. These record exact WASM/native dependency closures, inherited Whelk BSD/MIT notices, Rust toolchains and complete licence texts. Original binary/engine assets and checksum pins remain unchanged. The standalone Obsidian release provides the offline Linux ZIP and shared graph; the graph package is independently versioned.

Ontomark shared graph 0.1.0

Choose a tag to compare

@jjohare jjohare released this 11 Oct 21:11

Shared offline ontology graph for Ontomark Obsidian and Narrative Goldmine. Framework-neutral Canvas rendering, typed asserted/inferred edges, stable identities, pan/zoom, neighbourhood focus, keyboard selection and activation, host layouts, and explicit cleanup.

Verified with5 library tests,3 mounted publisher interaction regressions, the publisher86-test suite, and real Obsidian1.14.4 graph acceptance. The tarball is an immutable dependency asset; consumers retain npm integrity pins. Source: packages/graph at this tag.