Skip to content
🚧 Early alpha — building the foundation. See the roadmap →

Tagged: Architecture

All Tags
Architecture
82 pages
5 related

System design, architecture decisions, and data flow

Pages with this tag

Four orthogonal dials — layout · join · shape · view-settings (is a pivot a left join?)

49

A clarity log untangling four concerns that collapse into one when you stare at a coverage matrix — where the note physically lives (layout), which rows are in the set (join/verbs), how the set is drawn (shape), and the knobs on that shape (view-settings). Answers "can a pivot also be a left join?" and records what Crosswalker supports on each dial today.

Artifact roles and authority — synthesis (minimal model, scoped authority)

50

Settles Crosswalker's minimal internal artifact model: Schema Contract, Knowledge Set, Recipe, and separate planned Execution Record and Package Manifest envelopes. Tier 1 remains the canonical managed representation rather than a root artifact, and new artifact nouns require genuinely independent semantics.

Primitives reconciliation — open decision register (verified findings, corpus-grounded options)

51

Three adversarial Opus audits (essence completeness, KR-formalism comparison, minimality) plus an independent verification pass and a first-party corpus investigation. The engine primitives survive; the register captures the field-level completions, subtractions, and language decisions needed before the replay slice locks its hash taxonomy.

Save and exact replay — open decision register (aligned direction, unsettled details)

52

Three independent audits confirm the Save and Exact Replay direction fits Crosswalker's settled primitives, artifact authority model, and prior provenance/migration research. This register captures what is already settled, the eight decisions that must be made before implementation, and the pages each decision touches.

The import set — who owns a note, settled

53

Architect decision. Three features stalled on one unmodelled concept: a stable identity for 'the collection of notes one import owns.' The import set is that identity — minted once at first import, stamped into provenance, never derived from changeable attributes. It unblocks orphan reporting on every path, makes deletion safe to even discuss, and dissolves the release-isolation deadlock instead of mitigating it: identity schemes become per-set and fixed at mint, so no existing note's identity ever changes.

Re-import is identity reconciliation, not path migration

54

Architect decision after the SSSOM path-restructuring work failed two remediation rounds. The failure was not the code — it was reconciling by the wrong key. A re-import must match notes by concept identity (the curie every note already carries), never by path patterns. Addresses are derived and disposable; identity is the join key. This sets the design for rebuilding P3, feeds Ch 43, and closes the 'should Crosswalker move files?' question.

Save and exact replay — Gate 1 ratified (D1–D4)

55

The owner ratified all four Gate 1 decisions for save and exact replay: a separate recipe-revision digest that leaves every existing fingerprint meaning intact, a closed binding field set with no free-form parameters, managed-content equivalence as the only replay promise, and source retention that requires explicit opt-in before anything is copied. This unblocks the design specification only; no schema, storage, or UI has been implemented.

Recipe library: Gate 2 settled (D5 fork lineage, D6 saved setups kept)

56

The two Gate 2 decisions for save and exact replay are settled so the recipe library could ship: saving an edited recipe makes a new recipe that records what it was based on (no revision chains), and the older saved setups keep working beside recipes with no migration. Also records where saved recipes live and what the public term is.

Recipe Run again: where a run is remembered, and what running again promises

57

Slice 2 of the recipe library. A saved recipe now remembers which import set it last ran into and from which file, offers Run again, and says on the first step whether the file or the recipe changed. Records the seven design rulings, the deferred source copy, and the known gaps.

Mapping set release record: one record per crosswalk release

58

Track 3 of v0.1.7. Every mapping set imported from SSSOM now carries one release record: identity (declared or minted once), version, both frameworks with versions, provider, license, assertion count and two digests. Records the twelve rulings, the refresh rule, what export carries, and what is deferred to slice 2 (STRM sidecar, recipe-declared crosswalk sets).

Mapping set release record, slice 2: typed tables and recipe crosswalks

59

Closes Track 3 of v0.1.7. A typed mapping table (STRM) can now be imported, and its release record travels in a companion file beside the export. Crosswalk columns declared in a recipe get a release record with an id assigned once, not derived from the recipe. Records rulings S1 to S7, the partial-export guard, and what a typed table cannot carry.

The search index never persisted: sqlite moves into a worker

60

Two real runs (desktop Obsidian, OpenClast browser-native) showed the Tier 2 sidecar silently in memory on every host, because the OPFS storage mode needs an API Chromium exposes only in dedicated workers. Records the nine rulings for hosting sqlite in a worker built from inlined text, the visible fallback, the narrowing of the Ch 23 main-thread commitment, and what the OpenClast collaboration established.