@cynodia/axiom 0.14.0-alpha.2 → 0.14.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -33,7 +33,7 @@ Shorter forms of the same routing: [`AGENTS.md`](AGENTS.md) and [`llms.txt`](llm
33
33
  at this package's root.
34
34
 
35
35
  **Status: experimental / alpha.** The API may change between alpha releases. The
36
- documentation in `docs/` describes this exact version, `0.14.0-alpha.2`.
36
+ documentation in `docs/` describes this exact version, `0.14.0-alpha.3`.
37
37
 
38
38
  ## Installation
39
39
 
@@ -47,7 +47,7 @@ Every release of this project is a pre-release and npm's `latest` tag points at
47
47
  plain command above installs the current version. **There is no `alpha` dist-tag** — the tag
48
48
  was removed once it stopped tracking releases, and `npm install @cynodia/axiom@alpha` now
49
49
  fails with a 404. Pin the exact version instead when one is needed:
50
- `npm install @cynodia/axiom@0.14.0-alpha.2`.
50
+ `npm install @cynodia/axiom@0.14.0-alpha.3`.
51
51
 
52
52
  These are ES modules compiled to ES2022; import them with `import`, not `require`. There is
53
53
  no published Axiom CLI. `@cynodia/axiom-server`'s SQLite persistence adapter additionally
@@ -1,6 +1,6 @@
1
1
  # Actions and transactions
2
2
 
3
- Axiom 0.14.0-alpha.2. An action is behavior expressed as data, executed as a transaction.
3
+ Axiom 0.14.0-alpha.3. An action is behavior expressed as data, executed as a transaction.
4
4
 
5
5
  ```ts
6
6
  {
package/docs/AGENT_API.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Agent API
2
2
 
3
- Axiom 0.14.0-alpha.2. The machine-facing interface. Agents query semantics and apply
3
+ Axiom 0.14.0-alpha.3. The machine-facing interface. Agents query semantics and apply
4
4
  structural transformations; they never edit generated code.
5
5
 
6
6
  ```ts
@@ -1,6 +1,6 @@
1
1
  # Agent reference
2
2
 
3
- Axiom 0.14.0-alpha.2. Compressed operational contract. Read this plus the `.d.ts`
3
+ Axiom 0.14.0-alpha.3. Compressed operational contract. Read this plus the `.d.ts`
4
4
  declarations before authoring or modifying an Axiom application.
5
5
 
6
6
  Formal guarantees: [`SEMANTIC_CONTRACT.md`](SEMANTIC_CONTRACT.md). Mistakes that compile:
@@ -1195,9 +1195,18 @@ semantic step — no transition, no `ActionDef` invoke, no event/timer/branch, n
1195
1195
  auto-failed or auto-cancelled, and `cancelWorkflow` from an incompatible build is refused.
1196
1196
  Presentation-only changes (`name` / `description` / `label`) and step declaration order are
1197
1197
  **not** semantic. A semantically identical fresh process recovers instances normally. There
1198
- is no workflow instance migration in 0.14. Structurally invalid workflow IR is refused at
1199
- `createAxiomServer` (`WorkflowIRError`); a malformed step reaches `validateGraph` as a
1200
- `WORKFLOW_INVALID_STEP` diagnostic, never a native error.
1198
+ is no workflow instance migration in 0.14.
1199
+
1200
+ Totality: every surface that inspects / validates / compiles / admits / executes a
1201
+ `WorkflowDef` is total over malformed input. `validateGraph` / `AgentAPI.validate` /
1202
+ `AgentAPI.analyzeWorkflow` / `compileToServerIR` produce a structured diagnostic (or
1203
+ structured `Error`), never a native `TypeError`, for a `null` / non-object step, a
1204
+ non-array `steps` / `inputs` / `bindings`, or an unknown step kind. A hand-tampered Server
1205
+ IR is refused at admission — `createAxiomServer` / `createWorkflowEngine` throw
1206
+ `WorkflowIRError` (`WORKFLOW_INVALID_IR`) — for those container shapes **and** for broken
1207
+ references (a `bind` to an undeclared binding, a `producedBy` to a non-step, a `ref` outside
1208
+ the closed workflow scope, a `now`/`uuid`/`random` call). Unknown references are invalid,
1209
+ never silently dropped; an admitted workflow can never wedge permanently `running` on one.
1201
1210
 
1202
1211
  Inspection: `server.getWorkflow(instanceId)` / `inspectWorkflows(limit)` — `status`,
1203
1212
  `currentStepId`, `activationId`, `attempt`, `waitingReason`, `nextEligibleAt`,
@@ -1,6 +1,6 @@
1
1
  # Anti-patterns
2
2
 
3
- Axiom 0.14.0-alpha.2. Each of these compiles. Each is wrong. Each is followed by the correct
3
+ Axiom 0.14.0-alpha.3. Each of these compiles. Each is wrong. Each is followed by the correct
4
4
  alternative.
5
5
 
6
6
  ## 1. Field names as entity runtime keys
package/docs/AUTHORITY.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Authority
2
2
 
3
- Axiom 0.14.0-alpha.2. How an application crosses the trust boundary.
3
+ Axiom 0.14.0-alpha.3. How an application crosses the trust boundary.
4
4
 
5
5
  Until 0.5.x an Axiom application executed locally. 0.6 adds an **authority**: a generic
6
6
  runtime that owns state, decides mutations and persists them. The same semantic graph
@@ -1,6 +1,6 @@
1
1
  # Constraints
2
2
 
3
- Axiom 0.14.0-alpha.2. Two constructs, answering different questions. They are not
3
+ Axiom 0.14.0-alpha.3. Two constructs, answering different questions. They are not
4
4
  interchangeable.
5
5
 
6
6
  | | Question | Sees |
@@ -1,6 +1,6 @@
1
1
  # Distributed authority
2
2
 
3
- *This document describes Axiom `0.14.0-alpha.2`.*
3
+ *This document describes Axiom `0.14.0-alpha.3`.*
4
4
 
5
5
  The authoritative runtime (`docs/AUTHORITY.md`) may run as **more than one process at the
6
6
  same time**, over one shared persistence provider, without any change to the
package/docs/EFFECTS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Effects
2
2
 
3
- Axiom 0.14.0-alpha.2. External effects are not rollback-capable state mutations. This file
3
+ Axiom 0.14.0-alpha.3. External effects are not rollback-capable state mutations. This file
4
4
  is the delivery model; [`AUTHORITY.md`](AUTHORITY.md#external-effects) is the load-bearing
5
5
  statement of why, and [`INTEGRATIONS.md`](INTEGRATIONS.md) is the operation vocabulary this
6
6
  builds on.
package/docs/EVENTS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Events
2
2
 
3
- Axiom 0.14.0-alpha.2. An event is a typed fact — something that happened — never work
3
+ Axiom 0.14.0-alpha.3. An event is a typed fact — something that happened — never work
4
4
  itself. [`AUTHORITY.md`](AUTHORITY.md#external-events) is the load-bearing statement;
5
5
  this file is the vocabulary and the webhook delivery mechanism. A **subscription** is the
6
6
  other way an external fact becomes an `EventDef` payload — see
@@ -1,6 +1,6 @@
1
1
  # Expressions
2
2
 
3
- Axiom 0.14.0-alpha.2. An expression describes **what value is computed**. It is a tree of
3
+ Axiom 0.14.0-alpha.3. An expression describes **what value is computed**. It is a tree of
4
4
  plain data, never source text and never a callback. Evaluation is pure: an expression MUST
5
5
  NOT change state.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Graph model
2
2
 
3
- Axiom 0.14.0-alpha.2. The `ApplicationGraph` is the authoritative representation of an
3
+ Axiom 0.14.0-alpha.3. The `ApplicationGraph` is the authoritative representation of an
4
4
  application. Everything else — the IR, the page, the DOM — is derived from it and is never
5
5
  edited.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Integrations
2
2
 
3
- Axiom 0.14.0-alpha.2. How an application declares and calls an external system, without
3
+ Axiom 0.14.0-alpha.3. How an application declares and calls an external system, without
4
4
  embedding a transport, an SDK or a secret in the graph. The authority boundary this
5
5
  depends on is [`AUTHORITY.md`](AUTHORITY.md#external-systems); this file is the vocabulary.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Realtime — live canonical queries
2
2
 
3
- Axiom 0.14.0-alpha.2. The operational contract for **observing a `QueryDef` result over
3
+ Axiom 0.14.0-alpha.3. The operational contract for **observing a `QueryDef` result over
4
4
  time**: subscribe once, receive an initial coherent result, then receive canonical changes
5
5
  as authoritative committed state moves — through any compatible authority, across
6
6
  reconnects. `axiom.server.v7` (0.13 adds no IR vocabulary).
package/docs/LOCATIONS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Locations
2
2
 
3
- Axiom 0.14.0-alpha.2.
3
+ Axiom 0.14.0-alpha.3.
4
4
 
5
5
  ```text
6
6
  Expression = a value
@@ -1,6 +1,6 @@
1
1
  # Schema evolution & semantic migrations
2
2
 
3
- Axiom 0.14.0-alpha.2. The operational contract for evolving a deployed application's
3
+ Axiom 0.14.0-alpha.3. The operational contract for evolving a deployed application's
4
4
  semantic model and its persisted canonical data over time — adding a required field,
5
5
  splitting one field into two, removing an obsolete one, migrating millions of
6
6
  provider-backed rows — **without** an application-authored SQL migration, an ORM migration,
@@ -1,6 +1,6 @@
1
1
  # Presentation
2
2
 
3
- Axiom 0.14.0-alpha.2. Presentation is **semantic UX intent**, expressed as data on a UI
3
+ Axiom 0.14.0-alpha.3. Presentation is **semantic UX intent**, expressed as data on a UI
4
4
  node. It names roles, tokens and device classes. It never names a colour, a length, a media
5
5
  query or a CSS property.
6
6
 
package/docs/QUERIES.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Semantic data access & the query layer
2
2
 
3
- Axiom 0.14.0-alpha.2. The operational contract for demand-driven reads over authoritative
3
+ Axiom 0.14.0-alpha.3. The operational contract for demand-driven reads over authoritative
4
4
  data that is too large to materialize as a `StateDef` — 500,000 orders, 5,000,000 order
5
5
  lines, years of audit rows. `axiom.server.v6`.
6
6
 
package/docs/RUNTIME.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Runtime
2
2
 
3
- Axiom 0.14.0-alpha.2. The runtime executes an `ApplicationIR`. It is domain-independent: it
3
+ Axiom 0.14.0-alpha.3. The runtime executes an `ApplicationIR`. It is domain-independent: it
4
4
  contains no knowledge of any application.
5
5
 
6
6
  ## Constructing
@@ -1,6 +1,6 @@
1
1
  # Semantic contract
2
2
 
3
- Axiom 0.14.0-alpha.2. Runtime guarantees, stated formally. This file defines behavior; it
3
+ Axiom 0.14.0-alpha.3. Runtime guarantees, stated formally. This file defines behavior; it
4
4
  does not teach. Where this file and any specification in `../specs/` disagree, this file
5
5
  describes the implementation and is authoritative.
6
6
 
package/docs/STATE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # State
2
2
 
3
- Axiom 0.14.0-alpha.2. A `StateDef` is a named application value: stored, or computed from
3
+ Axiom 0.14.0-alpha.3. A `StateDef` is a named application value: stored, or computed from
4
4
  other state.
5
5
 
6
6
  ```ts
package/docs/STORAGE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Storage and blobs
2
2
 
3
- Axiom 0.14.0-alpha.2. How an application stores, references, serves and deletes binary data —
3
+ Axiom 0.14.0-alpha.3. How an application stores, references, serves and deletes binary data —
4
4
  an attachment, a document, a photograph, a diagnostic log — with no filesystem path, no
5
5
  upload route and no download route anywhere in it.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Subscriptions
2
2
 
3
- Axiom 0.14.0-alpha.2. How an application receives a stream of external events — an MQTT
3
+ Axiom 0.14.0-alpha.3. How an application receives a stream of external events — an MQTT
4
4
  topic, a WebSocket feed, a queue consumer, a filesystem watcher, a serial port — without a
5
5
  client, a socket or a callback anywhere in the graph.
6
6
 
package/docs/TRIGGERS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Triggers
2
2
 
3
- Axiom 0.14.0-alpha.2. A `TriggerDef` says **when** an action should be invoked, without
3
+ Axiom 0.14.0-alpha.3. A `TriggerDef` says **when** an action should be invoked, without
4
4
  embedding callback code. `docs/AUTHORITY.md`
5
5
  [§ Triggers](AUTHORITY.md#triggers) is the load-bearing statement of the execution model;
6
6
  this file is the vocabulary.
package/docs/UI.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # UI
2
2
 
3
- Axiom 0.14.0-alpha.2. Eleven semantic UI node kinds describe **what exists and what it does**.
3
+ Axiom 0.14.0-alpha.3. Eleven semantic UI node kinds describe **what exists and what it does**.
4
4
  How it looks is [presentation](PRESENTATION.md).
5
5
 
6
6
  All eleven share `UIBase`:
@@ -1,6 +1,6 @@
1
1
  # Validation
2
2
 
3
- Axiom 0.14.0-alpha.2. Validation is authoring-time structural checking. It is not the same
3
+ Axiom 0.14.0-alpha.3. Validation is authoring-time structural checking. It is not the same
4
4
  as runtime constraint evaluation — see [`CONSTRAINTS.md`](CONSTRAINTS.md) for the four
5
5
  layers of correctness.
6
6
 
@@ -197,6 +197,20 @@ connect schema 1 to it. A migration transform reads the old record through the r
197
197
  to `axiom.server.v8` or executed. Every failure is a structured diagnostic — never a thrown
198
198
  `TypeError` on a malformed step.
199
199
 
200
+ **Totality (spec14pt4).** Every public surface that inspects, validates, compiles, admits or
201
+ executes a `WorkflowDef` is total over *malformed* input: `validateGraph`,
202
+ `compileToServerIR`, `AgentAPI.validate` and `AgentAPI.analyzeWorkflow` all produce a
203
+ structured diagnostic (or a structured `Error`, for `analyzeWorkflow`) — never a native
204
+ `TypeError` — for a `null` / non-object step, a `steps` / `inputs` / `bindings` that is not
205
+ an array, or an unknown step kind. A hand-tampered Server IR (a stored / transported IR that
206
+ never passed `validateGraph`) is rejected at **admission** — `createAxiomServer` /
207
+ `createWorkflowEngine` throw `WorkflowIRError` (`WORKFLOW_INVALID_IR`) — for the same
208
+ malformed container shapes and for broken references: a `bind` to an undeclared
209
+ `WorkflowBinding`, a `WorkflowBinding.producedBy` that is not a step, an expression `ref`
210
+ outside the closed workflow scope, or a `now`/`uuid`/`random` call. Unknown binding /
211
+ reference semantics are **invalid**, never silently dropped, and can never produce a
212
+ permanently `running` workflow.
213
+
200
214
  | Code | Raised when |
201
215
  | --- | --- |
202
216
  | `WORKFLOW_ENTRY_NOT_FOUND` | `WorkflowDef.entry` does not name a step of that workflow. |
package/docs/WORKFLOWS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Durable workflows
2
2
 
3
- Axiom 0.14.0-alpha.2. The operational contract for **long-running semantic computations with
3
+ Axiom 0.14.0-alpha.3. The operational contract for **long-running semantic computations with
4
4
  a durable control position** — orchestration that survives process death, authority
5
5
  failover, retries, timer delivery, event delivery and ordinary distributed contention
6
6
  without application-owned infrastructure. `axiom.server.v8`.
@@ -246,7 +246,7 @@ step's argument expressions / `retry` policy, a `wait-event` step's `where` / `b
246
246
  or binding migration, and none is inferred ("closest step" recovery never happens).
247
247
  - A graph with **no** `WorkflowDef` compiles to the byte-identical `axiom.server.v1`–`v7`
248
248
  document it always did, and its `semanticFingerprint` / `schemaFingerprint` are unchanged.
249
- - Pre-`0.14.0-alpha.2` instances carry a compatibility key computed before `WorkflowDef`
249
+ - Pre-`0.14.0-alpha.3` instances carry a compatibility key computed before `WorkflowDef`
250
250
  participated; a corrected authority treats them as incompatible and fails closed (these
251
251
  are pre-freeze alpha releases — silent reinterpretation is the only unacceptable
252
252
  outcome).
package/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # Axiom
2
2
 
3
- > AI-native semantic application framework, version 0.14.0-alpha.2. An Axiom application is a
3
+ > AI-native semantic application framework, version 0.14.0-alpha.3. An Axiom application is a
4
4
  > typed semantic graph — state, behavior, constraints, UI structure, presentation and
5
5
  > authority as structured data — executed by generic runtimes. The JavaScript, HTML and CSS
6
6
  > that reach a browser are compiler output and are never authored or edited. The primary
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cynodia/axiom",
3
- "version": "0.14.0-alpha.2",
3
+ "version": "0.14.0-alpha.3",
4
4
  "description": "AI-native semantic web application framework.",
5
5
  "license": "MIT",
6
6
  "author": "AskTech AS",
@@ -34,10 +34,10 @@
34
34
  }
35
35
  },
36
36
  "dependencies": {
37
- "@cynodia/axiom-core": "0.14.0-alpha.2",
38
- "@cynodia/axiom-runtime": "0.14.0-alpha.2",
39
- "@cynodia/axiom-compiler": "0.14.0-alpha.2",
40
- "@cynodia/axiom-agent-api": "0.14.0-alpha.2"
37
+ "@cynodia/axiom-core": "0.14.0-alpha.3",
38
+ "@cynodia/axiom-runtime": "0.14.0-alpha.3",
39
+ "@cynodia/axiom-compiler": "0.14.0-alpha.3",
40
+ "@cynodia/axiom-agent-api": "0.14.0-alpha.3"
41
41
  },
42
42
  "scripts": {
43
43
  "build": "tsc -b tsconfig.json"