clawft

Release Notes

Auto-generated from CHANGELOG.md. Complete WeftOS version history.

Release Notes

This page is generated from CHANGELOG.md by scripts/build-releases-mdx.sh. Edits made directly here will be overwritten on the next docs build. To change a release entry, edit CHANGELOG.md and re-run the script.

v0.8.0

2026-07-31

First 0.8.x publish-line cut from release/0.8-staging. Workspace version jumps from 0.6.20 → 0.8.0 to match the product cycle (Plane 0.8.x). Binaries via cargo-dist / Homebrew; crates.io and npm publish when tokens allow.

Added

  • Spatial / BVH: Phase A–E spatial index, optional VectorRef on leaves (ADR-088), Phase F dual-index join helpers (ADR-093), W1 geometric partition for world-model structure (ADR-078 path).
  • Mesh: QUIC transport, mesh clock/fixtures, chain replay + Merkle, capability claims foundations.
  • LeWM / world model crates: weftos-worldmodel-*, sensor pipeline, SIGReg / training surfaces, ADR-090 ECC decoupling invariant.
  • MCP: HTTP/SSE listen, session capability tokens, window_* tools → WindowIntent, profiles (ADR-075/076).
  • Agent Workspace: freeform WM + WindowIntent (ADR-073).
  • Android splat capture scaffold (ADR-077) + edge UniFFI path.
  • Governance: action/tool selectors, GatePrincipal, spawn approval Defer path, ADR-094 foundation (WEFT-633–638).
  • Dashboard / UI: skill install/uninstall API, mobile drawer, Playwright + axe-core a11y suite (WEFT-301/312/561/575).
  • Vector: vendor-free LogQuant/SIMD + MicroLoraRouter path; Hybrid/DiskANN deferred cold tier (bench-documented).
  • MetaHarness foundation (ADR-096/097): Graph Views as operational sensor fusion; flywheel evaluate-only ViewSpec fixtures; harness tasks (gate / plane-dag / fusion-view); AgentDB pattern seed; universal data-surface governance inventory.
  • Native GUI release artifact (WEFT-499): weft-gui-egui first-class cargo-dist app (clawft-gui-egui-{triple}.tar.gz).

Fixed

  • Release CI (WEFT-593): cargo-dist plan job no longer loses artifacts_matrix to GHA secret-scanning (slimmed job outputs).
  • Docker (from parked 0.6.x work): ~/.clawft ownership before VOLUME, default gateway config.json, alpine static musl path, .dockerignore hygiene.

Notes / residuals

  • Upstream-blocked / watch: pocket-tts, some RuVector issues, multi-user Tailscale auth (1.0.x product).
  • Live BVH publish from structure extract and full Tauri desktop shell remain follow-ups, not silent closes.
  • MetaHarness upstream ADR-041 scorecard has structural ceilings (shallow inventory); load-bearing score is weftosFoundationScore.

v0.6.20

2026-06-28

Large rollup checkpoint on the 0.6 line. Folds in everything that landed between the v0.6.19 tag (2026-04-22) and this cut without its own release tag — the M4–M7 sweeps, agent-core-v1, the 0.8.0 desktop-GUI wave and app graduations, an experimental vector-first leaf-display pipeline, and a toolchain/test-hardening pass that brought the full build gate to green on a fresh machine for the first time. Pre-beta; no crates.io publish this cut — binaries (cargo-dist / Homebrew), WASM, and Docker artifacts only.

Added

Desktop GUI (egui) — 0.8.0 wave + app graduations

  • WeftOS design system v0.1: bg_sidebar token, DESIGN.md contract test, CI audit ratchet + surface-contract gate.
  • Canonical left sidebar + apps dispatch; bottom tray and floating chip/launcher windows retired.
  • Thirteen graduated apps (WEFT-579..591): Files, Processes, Services, Network, Logs, Settings, Scheduler, Monitor, Terminal, Chat, Admin, Explorer, and the Apps launcher.
  • Explorer intelligence band (ECC / vector-DB KPI tiles), a functional Scheduler cron table, and a witness-chain tail panel.

Web dashboard (clawft-ui)

  • Cmd+K command palette with fuzzy search + recents (WEFT-308); PWA manifest + service worker + offline shell (WEFT-311); Tauri 2.0 desktop shell scaffold (WEFT-313); Playwright E2E suite (WEFT-314); jsx-a11y + JS bundle-size CI gates (WEFT-315); multi-stage Dockerfile (WEFT-317); render_ui → canvas WebSocket broadcaster (WEFT-306).

Agent core, multi-agent, voice, channels

  • agent-core-v1 routers: HybridRouter v2.5, EmbeddingRouter v2, LlmClassifierRouter v1; weaver soul promote.
  • AgentRouter + per-agent runtime + delegation-depth guard; real Claude Code spawn + MCP allowed-tools allowlist; per-conversation cost circuit-breaker.
  • Voice Level 0/1/2 permission gate, mic privacy indicator, substrate STT→agent transcript path; real channel I/O for Email / WhatsApp / Google Chat / Teams / Signal / IRC.

Daemon / kernel plumbing

  • [kernel.llm] / [kernel.agent] config; LLM registered as a first-class kernel service (LlmSystemService); per-chat-turn TurnAnchor (chain / HNSW / causal); mesh peer-reconnect channel refresh.

Vector-first leaf display (experimental / preview)

  • New crates weftos-leaf-scene / -renderer / -sim / -canvas, weftos-scene-builder, weftos-leaf-touch-gt911, and lgfx-bus-rgb-rs: retained-mode scene graph, CBOR SceneEnvelope leaf-push wire, damage-rect rendering, GT911 touch. ESP32-S3 CrowPanel firmware (clawft-edge-pad / -idf). Not published to crates.io; one known residual display bug (double-buffer presentation) is tracked.
  • ADR-056 (BVH-on-RVF spatial index) and ADR-057 (substrate per-path read ACLs) accepted.

Changed

  • Workspace-wide cargo fmt + cargo clippy --fix hygiene pass.
  • Workspace tests now run under cargo-nextest (per-test process isolation) in scripts/build.sh, eliminating a pre-existing parallel-test-isolation flake class; doctests run as a separate pass.
  • LLM endpoint resolution logs its winning source and warns when an env var (including one loaded from .env) shadows [kernel.llm].

Fixed

  • clawft-surface builder gained a modal() constructor — the admin surface builder could not previously mirror its TOML fixture's restart-modal (latent since WEFT-589).
  • Kernel: mesh.subscribe intercepted before the local-router check; zero-duration timeout / key-rotation boundaries (>= not >); clippy redundant_closure; boot banner reads CARGO_PKG_VERSION.
  • Test determinism: per-call wordpiece temp-vocab path, env-var test isolation, and monotonic (counter-prefixed) turn ids.

Security

  • Patched quinn-proto 0.11.15 (RUSTSEC-2026-0185 — remote memory exhaustion, HIGH), memmap2 0.9.11, and rkyv 0.8.16; deferred the wasmtime 33.0.2 advisories (need the 34+ bump) in the tracked cargo audit ignore list.
  • Earlier in the cycle: per-method capability gate + ipc_tcp auth, sigstore attestation verification, MAESTRO prompt-injection sanitization, MCP PermissionFilter, and three dashboard auth fixes.

v0.6.19

2026-04-22

Rollup of the development-0.7.0 work stream onto the 0.6 release line. Ships the M1.5 app-layer trilogy, the 21-item canon UI primitive system, the built-in system components, a sensor framework, ExoChain stream-anchor auditing, eight EML-swap learnable-model wirings, and two late kernel-plumbing fixes (cluster peer persistence + optional TCP IPC relay). Also merges forward the v0.6.18 graphify fix (originally cut on an orphan commit that never reached master).

Added

M1.5 — App Layer Trilogy

  • clawft-app crate — manifest parser + JSON registry for declarative system apps.
  • clawft-substrate crate — kernel adapter refactor + substrate RPCs (read, subscribe, publish, notify). Relays externally-published paths to the GUI.
  • clawft-surface crate — description IR + composer + binding evaluator. New UI composer primitives: ui://heatmap, ui://waveform.
  • Unified Mode / Input / OntologySnapshot / Permission across surface / app / substrate.
  • Broke the surface → gui-egui dep cycle; wasm-gated substrate.
  • WeftOS Admin app — manifest + surface description + Desktop Apps section, rendered end-to-end from the surface IR, covered by integration test.

Canon Primitive System (21 components)

  • CanonWidget trait + CanonResponse + Pressable reference implementation.
  • Retrofit pass: 7–8 existing blocks wrapped in the trait.
  • New primitives: Field / Toggle / Select / Slider / Grid / Dock / Sheet / Modal / Media / Canvas / Tabs (11).
  • Canon demo lab — 20 primitive demos in the WeftOS panel.

GUI + VSCode Extension

  • clawft-gui-egui now compiles to wasm32-unknown-unknown.
  • VSCode extension (weft-panel) hosts the egui bundle in Cursor.
  • Tray chips open ontology-backed detail panels.
  • ToF tray chip with native 8×8 heatmap panel.
  • WeftOS theming + weft-demo-lab bin hosting egui's full demo; demo lab Fractal / HTTP / 3D / Color tabs + theme-toggle A/B.
  • M1 wasm-compat polish: web-time, PNG logo, extension hotload.

M1.5.1 — Built-in System Components (α)

  • NetworkAdapter — WiFi/ethernet/battery via /sys/class.
  • BluetoothAdapter — host-local via /sys/class.
  • Mesh + chain adapters; dropped the DeFi vapor chip.
  • Admin-app affordances end-to-end + layout polish.
  • wasm-safe SystemTime in clawft-app registry.

Sensor Framework

  • PhysicalSensorAdapter trait.
  • MicrophoneAdapter preview + extension RPC allowlist extension.

ExoChain + IPC

  • StreamWindowCommit anchor service — large streams (audio PCM, sensor batches) now auditable against the chain without bloating rvf with per-frame signatures. BLAKE3 rolling window commits.
  • agent.register + signed IPC envelopes for cross-agent message integrity.
  • ipc.subscribe_stream — external-socket streaming subscribers.
  • [kernel.ipc_tcp] — optional TCP relay for the daemon's JSON-RPC socket. Transparent byte-copy to the unix socket for Windows/WSL and remote bridges. Auth/policy stays on the unix path.

Kernel

  • Cluster peer persistence — ClusterMembership persists to .weftos/runtime/cluster_peers.json via atomic tmp+rename on every add/remove/state-change, and rehydrates on boot. Fixes the regression where weaver kernel start reported cluster: degraded - no healthy cluster nodes after every restart because the in-memory peer map was wiped.
  • clawft-treecalc crate — lifts Form + triage into its own module.

EML-Swap Learnable-Model Wirings (Finding #5 + #7 + #9)

Eight learnable models replace hard-coded constants:

  • GovernanceScorerModel in EffectVector::score
  • RestartStrategyModel in RestartTracker
  • HealthThresholdModel in ProbeConfig
  • DeadLetterModel in ReliableQueue
  • GossipTimingModel in ClusterConfig
  • ComplexityModel in ComplexityAnalyzer
  • TickIntervalModel in WeaverEngine
  • CausalEdgeType decay treecalc dispatch

Fixed

  • democritus: stopped busy-looping the stuck detector; swapped exact-path to RFF.
  • m1.5-surface: parser RHS-loss on subtraction + count arity + scope docs.
  • m1.5-substrate: log ring trim + watermark overflow safety + tracked subscriptions.
  • LLM retry: RetryModel wired into RetryPolicy via with_model().

Known Issues

  • Pre-existing workspace clippy debt (~150 errors across clawft-types/src/goal.rs, clawft-rpc, eml-core, and some older kernel/weave code). scripts/build.sh check is green; scripts/build.sh clippy is red on pre-existing code.
  • One test in clawft-kernel --lib full suite hangs when run aggregate — fixed (WEFT-134): full-scale HNSW-EML benches ignored; smoke path in suite.

v0.6.18

2026-04-19

Fixed

  • graphify ingest/query schema mismatch (#26): writer now emits "edges" (not NetworkX "links") and populates source_file on each edge, matching the reader's schema validator. weaver graphify query now succeeds immediately after weaver graphify ingest without any workaround. weaver graphify diff retains backwards compatibility with old "links"-format graph.json files.

v0.6.17

2026-04-17

Leaf Push Protocol

  • weftos-leaf-types crate: shared no_std wire schema for kernel → leaf push operations. CBOR serialization. Types: LeafPush (Audio/Display/ Brightness/Effect), LeafServices, Subscribe, AudioDrop (Chord/Scuttle/ Pcm), DisplayText/Image/Clear, LayerSlot, LayerEffectKind. 11 roundtrip tests.
  • weaver leaf push: CLI command to push audio/display/control to leaf devices via kernel daemon IPC. Publishes CBOR payload (base64 wrapped) to mesh.leaf.PUBKEY.push topic. Supports text, chord, scuttle, clear, brightness, effect subcommands with --dry-run and named colors.

v0.6.16

2026-04-17

Added

  • MessagePayload::Binary (Vec of u8): raw binary payload variant for mesh transport, sensor data, file transfer, and opaque byte streams. Serde roundtrip test included.

v0.6.15

2026-04-17

Mesh Noise Encryption Wired End-to-End

  • [kernel.mesh] noise = true enables Noise XX handshake on all connections
  • Boot accept loop wraps streams in NoiseChannel::respond() (responder)
  • Seed peer connections use NoiseChannel::initiate() (initiator)
  • noise_key_path config for persistent Ed25519 key (ephemeral if absent)
  • Failed handshakes logged and dropped (don't crash listener)

ExoChain Mesh Audit Trail (PR #24)

  • Every handle_incoming() appends a peer.envelope event to ExoChain
  • Captures source_node, dest_node, envelope_id, topic, hop_count
  • Viewable via weaver chain local
  • Best-effort append — failure doesn't block message delivery

CI Fix

  • WASM size gate: explicit rustup target add wasm32-wasip2 fallback

v0.6.14

2026-04-17

Mesh Time Synchronization

  • MeshClockSync: authority-based time sync piggybacked on heartbeats. Clock hierarchy: GPS > TSF > NTP > Mesh > Local. Authority elected from best source. EMA smoothing with outlier rejection. Precision targets: <1µs (WiFi TSF), ~100µs (same LAN), ~1-5ms (cross-network).
  • ClockSource enum: Local, Mesh, Ntp, Tsf, Gps with ordering.
  • mesh_time_us() on MeshRuntime: returns authority-aligned microseconds.
  • PingRequest/PingResponse carry mesh_time_us and clock_source fields.
  • 5 new time sync tests (clock ordering, initial state, NTP authority, source filtering, jitter smoothing).

Noise Protocol Encryption

  • Real Noise XX handshake via snow crate (Noise_XX_25519_ChaChaPoly_SHA256).
  • NoiseChannel::initiate() and NoiseChannel::respond() for mutual auth.
  • create_encrypted_channel() helper: crypto when configured, passthrough for dev/test. Mesh traffic is now encrypted by default when Noise is configured.

weave.toml Config Loading

  • Config loader now reads weave.toml from project root and merges with JSON config (~/.clawft/config.json). Deep merge: JSON overrides TOML. [kernel.mesh] enabled = true in weave.toml actually works now.

Agent Analysis Commands

  • weft analyze with 9 subcommands (extract, detect, infer, diff, slice, vowl, enrich, links, suggest) — agents can run topology/vault analysis by delegating to weaver.

Tree-sitter ast-extract Fixed

  • 19 compile errors in the --features lang-rust path fixed. Tree-sitter can be used as the fast baseline extractor alongside LSP enrichment.

Other Fixes

  • weaver init rewritten — works in any directory, generates weave.toml
  • weaver update handles "Text file busy" via rename-swap
  • Mesh peer-connected log raised from debug to info

v0.6.13

2026-04-17

Mesh Transport Boot Integration

  • Wired K6 mesh transport into kernel boot sequence (phase 5d)
  • MeshConfig in [kernel.mesh]: enabled, transport (tcp/ws), listen_addr, discovery (Kademlia), seed_peers
  • MeshRuntime created and wired to A2A router during boot
  • TCP listener spawned, seed peer connections in background
  • mesh feature added to kernel defaults
  • Corpus probe + tree calculus triage + EML tier parameters
  • 1.61x faster mean latency, +10% recall on clustered data
  • 2-head EML ef model (ef→latency + ef→recall joint prediction)
  • HnswService EML integration with ExoChain event trail
  • 4-phase benchmark harness, 76 new tests

v0.6.12

2026-04-17

Universal Topology Browser

The centerpiece of this release: a complete framework for navigating any data structure as an interactive, drillable topology graph.

  • TopologySchema (clawft-graphify::topology): YAML-based geometry declarations for the universal topology browser. Schemas are composable (Docker-config style layering via extends), support IRI-based identity for ontology interoperability, and include mode configuration (Diff, Heatmap, Flow, Timeline). Includes NodeTypeConfig with geometry (force/tree/layered/timeline/stream/grid/geo/radial/wardley), visual style, containment declarations, and EdgeTypeConfig with cardinality constraints. Ships with a 7R Disposition enum (Rehost, Replatform, Refactor, Repurchase, Retire, Retain, Ratify).

  • Domain schema presets: schemas/software.yaml (14 node types, 8 edge types, full IRIs with Schema.org same_as mappings) and schemas/investigation.yaml (13 node types, 9 edge types, IRIs mapped to FOAF/Schema.org for forensic analysis).

  • IRI-based entity identity (Entity.iri field): The word is a label, the IRI is the concept. "Service" in architecture docs maps to weftos:arch#Service, "Service" in support docs maps to weftos:support#Service — same word, different IRIs, different things in the graph. Resolves the ontology ambiguity problem.

  • Rust layout engine (clawft-graphify::layout):

    • Reingold-Tilford tree layout: O(n) top-down with centered parents
    • Barnes-Hut force-directed layout: repulsion + spring attraction + center gravity + collision resolution (80px minimum spacing)
    • Tree calculus triage dispatch: classifies nodes as Atom (no children), Sequence (same-type children), Branch (mixed children) to select layout strategy
    • Auto-detection heuristic: >60% Contains edges = tree, >50% timestamps = timeline, else force-directed
    • Positioned geometry output (PositionedGraph) consumable by any thin renderer (React, Tauri, TUI)
  • Graph slicer (clawft-graphify::layout::slicer): Pre-computes drill-down JSON per hierarchy level. Top level shows packages (28 nodes), double-click drills into modules with edges. Cross-package dependency edges aggregated via ancestor mapping. Portal counts show external connections. Intra-crate import edges extracted from use crate:: statements. Manifest JSON indexes all slices for lazy loading.

  • Schema inference (clawft-graphify::topology_infer): Generate a TopologySchema from an existing KnowledgeGraph by analyzing entity types, containment hierarchy, geometry, and edge patterns. Auto-generates IRIs. diff_schemas() compares declared vs inferred to detect architectural drift (added/removed types, geometry mismatches, new edge patterns).

  • VOWL JSON export (clawft-graphify::export::vowl): Emit WebVOWL-compatible JSON (8-key format: header, namespace, metrics, class, classAttribute, property, propertyAttribute) with IRI mappings from the topology schema. Consumable by WebVOWL and the navigator widget.

  • Navigator widget (docs/src/app/vowl-navigator/):

    • SliceNavigator: drill-down navigation consuming pre-positioned JSON from the Rust layout engine. Breadcrumb trail, double-click to drill, detail panel with type/IRI/connections, expandable node indicators. No d3-force in the browser — instant navigation.
    • VowlNavigator: VOWL visual notation renderer with D3 force layout, search, degree filter, datatype toggle, VOWL legend.
    • Mode toggle between drill-down (sliced) and VOWL flat views.
    • File upload for custom VOWL JSON.
  • Playwright E2E tests (24/24 pass): Validates symposium criteria — not a hairball (28 nodes at top level), drill-down with breadcrumbs, detail panel for architecture understanding, schema-driven visual encoding (shape/color per type), data integrity of slice files, usability (zoom, pan, help text, mode toggle).

CLI Commands

  • weaver topology layout GRAPH.json — compute positioned geometry with schema-driven or auto-detected layout
  • weaver topology validate SCHEMA.yaml — validate schemas with warnings
  • weaver topology detect GRAPH.json — auto-detect geometry, show edge/entity distribution and tree calculus triage classification
  • weaver topology infer GRAPH.json — infer a schema from graph data
  • weaver topology diff SCHEMA.yaml GRAPH.json — declared vs inferred schema drift detection
  • weaver topology vowl GRAPH.json — export VOWL JSON for the navigator
  • weaver topology slice GRAPH.json — generate drill-down slices
  • weaver topology extract PATH — extract codebase using tree calculus + EML

Tree Calculus + EML AST Extractor

  • clawft-graphify::extract::treecalc: Native Rust source extractor using tree calculus for structural dispatch and EML for confidence/complexity scoring. No tree-sitter dependency.
    • Tree calculus triage classifies every extracted item: Atom (constant, type alias), Sequence (struct fields, enum variants), Branch (impl with mixed children)
    • EML scoring: confidence = a * exp(b * x) + c * ln(d * x + 1) with bonuses for pub/doc. Parameters hand-initialized, trainable via eml-core later.
    • Extracts: functions, structs, enums, traits, impl blocks, constants, type aliases, statics, macros with children (methods, fields, variants)
    • Relationships: Contains, MethodOf, Implements, Extends, Calls (inferred)

LSP-Based Code Intelligence

  • New crate: clawft-lsp-extract: Standalone crate that spawns Language Server Protocol servers (rust-analyzer, typescript-language-server, pylsp, gopls) and extracts full semantic graphs via JSON-RPC.
    • protocol.rs: LSP JSON-RPC wire format (Content-Length + JSON-RPC 2.0)
    • server.rs: server lifecycle (spawn, initialize, query, shutdown)
    • extract.rs: walk source files, query documentSymbol, parse hierarchical symbols into LspGraph
    • graph.rs: LspGraph/LspNode/LspEdge types with all 26 LSP SymbolKinds
    • config.rs: language configs with auto-detection from file extensions
    • Enables semantic extraction from dozens of languages via their existing IDE infrastructure — tapping the "digital exhaust" that language servers already compute

Security

  • Unified prompt injection defense (sanitize_llm_input() + sanitize_schema_input()): Wraps existing sanitize_skill_instructions()

    • sanitize_content() with source boundary tagging for audit trail. Applies at all 7 LLM input paths identified in the MAESTRO security audit (semantic extraction, memory retrieval, session history, tool results, bootstrap files, schema builder inputs). Schema-specific checks detect injection via YAML directives and suspicious URI schemes.
  • Sprint 17 security plan (.planning/sprint17.md): MAESTRO-informed security hardening covering prompt injection pipeline (PI-1 through PI-5), RPC authentication, plugin supply chain signing, and ontology graph pipeline.

Vault Cultivation (v0.6.11)

  • weaver vault enrich — YAML frontmatter generation with type/tag/status inference from file content and path
  • weaver vault analyze — link graph metrics (orphans, clusters, density, broken links) via union-find
  • weaver vault suggest — scored connection suggestions based on shared tags, path proximity, keyword similarity
  • weaver vault auto-link — insert wikilinks for known document titles
  • weaver vault backlinks — generate backlink sections from incoming links

CI/CD Fixes

  • eml-core added to crates.io publish pipeline (was the root cause of v0.6.10 publish failure — clawft-llm depends on it)
  • eml-core v0.1.0 published to crates.io
  • Docker workflow: replaced fragile tag-push polling with workflow_run trigger, eliminating race condition with Release workflow
  • Release gate workflow: marks GitHub releases as prerelease when downstream jobs (Publish Crates, Docker) fail, so broken releases are visually flagged instead of silently half-done

Symposium: Universal Topology Browser

17 artifacts produced in .planning/symposiums/ontology-navigator/:

  • 8-session agenda covering schema design, layout algorithms, graph nesting, navigator modes, investigative instrument use case
  • Tree calculus + EML dual substrate architecture (ADR): triage for structural dispatch, EML for continuous parameters, pure Rust, <50ms for 10K nodes
  • IRI-based identity architecture (ADR): word vs concept, same_as mappings, OWL/RDF compatibility
  • ArcKit governance integration: 60 doc-type ontology, Wardley Map geometry, traceability matrix as Diff overlay
  • Google RAMP assessment patterns: 7R disposition model (including Ratify), declared-vs-observed topology diff, maturity radar
  • AI framework validation: 7 importable formal schemas (ML Schema, PROV-O, DTDL, AAS, ArchiMate, BPMN, OPC UA)
  • Schema builder agent design: 5 agent types (Framework, Codebase, Document, Visual, Telemetry) producing composable YAML fragments
  • Navigator mode system: Base (Explore/Timeline/Cluster/Wardley) + Overlay (Diff/Heatmap/Flow/Search) + Tool (Annotate), with performance budgets (base <300ms, overlay <100ms, tool <16ms)
  • Cold case investigation walkthrough scenario
  • Founder Q&A: 7 decisions (composable schemas, OWL compat, single overlay mode, topological distortion for missing nodes, IRI identity)

Internal

  • clawft-lsp-extract added to workspace
  • serde_yaml added to clawft-weave and clawft-graphify dependencies
  • 232+ Rust tests passing across graphify (topology, layout, triage, slicer, vault, VOWL export, schema inference)
  • 24 Playwright E2E tests passing for navigator
  • Fixed flaky vault suggest test (HashMap iteration order)

v0.6.11

2026-04-16

Added

  • Vault cultivation (weaver vault): Port of weave-nn's Obsidian vault tooling to Rust. Frontmatter enrichment, wikilink extraction, link graph analysis, connection suggestion, auto-linking, backlinks.
  • CI fix: eml-core added to publish pipeline, Docker race eliminated, release gate marks failed releases as prerelease.

v0.6.10

2026-04-15

Added

  • Head-to-head: EML vs plain affine attention. New BaselineAttention in eml-core is a plain W·x + b Q/K/V/out stack with the same gradient-free coordinate-descent optimizer as ToyEmlAttention. Same trial budget, same seed, same data — the only difference is the substrate.

    • compare_eml_vs_baseline(d_model, d_k, seq_len, depth, cfg, rounds) runs the workload on both and returns an AttentionComparison with param count, baseline MSE, final MSE, MSE reduction, and p99 inference latency for each
    • New attention_compare example prints the side-by-side table
    • Browser demo /clawft_eml-notebook gains an "EML vs baseline" mode that runs both leg-by-leg in-browser and renders the comparison as a table
  • Measured result at the gate shape (d_model=4, d_k=2, seq_len=2, depth=3), 5000 trials × 3 rounds, run 2026-04-15:

    MetricEML (SafeTree)Baseline (affine)
    Params352148
    Baseline MSE1.47830.2331
    Final MSE1.54190.0550
    MSE reduction-4.3%+76.4%
    p99 inference1161 ns360 ns

    Gate passes at 7.3% reduction (per-position-mean, 15k trials). EML convergence is noisy at this shape — some runs 7%, some -4%. Baseline consistently 76%. Baseline is 3.23× faster at inference and uses 2.38× fewer parameters.

    Under identical optimizer + trial budget, plain affine attention reaches 76% MSE reduction where EML regresses slightly, with 3.3× lower inference latency and 2.4× fewer parameters. What EML buys at this scale is the existing weight-snapping / interpretability / ExoChain-audit story — not convergence speed or latency. Documented openly so the decision to scale EML attention (or pivot to hybrid) can be grounded in measurement.

  • NVIDIA quantum research + 0.7.x roadmap doc: .planning/development_notes/nvidia-quantum-integration.md + docs/src/content/docs/weftos/quantum-nvidia.mdx. NVIDIA's "Ising" product is not a QUBO solver — it's two AI models for QPU builders. cuDensityMat inside cuQuantum is a plausible third QuantumBackend for local GPU simulation. Deferred to v0.7.x after GUI. ADR-048 queued.

  • EML Attention — Iteration 2 (experimental): saturation-safe tree architecture replaces the classical EmlTree path inside ToyEmlAttention

    • New SafeTree struct: depth-N tree that evaluates eml_safe(v·c0 + c1, |v| + c2 + 1) at each level. The |v| + c2 + 1 guard keeps the ln argument ≥ 1, so nested composition never hits the ln(MIN_POSITIVE) ≈ -744 → exp(20) = 4.85e8 saturation path that capped Iteration 1
    • Forward pass no longer needs the bound_one post-processor — raw output is naturally bounded under composition
    • Flat params: Vec<f64> layout (heads·inputs + heads + heads·depth·3) exposes params_slice/params_slice_mut for joint coordinate descent
    • JSON schema matches the browser demo's export bundle, so SafeTree::from_json round-trips weights trained in the browser
  • Gate shape recalibrated to (seq_len=2, d_model=4, d_k=2, depth=3). SafeTree's level-0 affine scales with inputs × heads (~10× the prior EmlTree-backed budget), so the gate uses a smaller shape to keep the convergence signal sharp; larger shapes ship via the Phase-4 scaling sweep

  • Go/no-go PASS: 7.3% MSE reduction on per-position-mean in 3 rounds, p99 inference 1174 ns. All 5 criteria green

Changed

  • ToyEmlAttention fields Q/K/V/softmax/out are now SafeTree instead of EmlModel. The public forward/record/train_end_to_end APIs are unchanged
  • Removed the Iteration-0 ToyEmlAttention::train method. Callers must use train_end_to_end(EndToEndTrainConfig) exclusively
  • The bound_one / bound_vec soft-saturation post-processor is removed — SafeTree doesn't need it
  • Iteration 2 gate G1 threshold is 5% MSE reduction on per-position-mean (was 80% target but convergence plateau limits browser-scale CD without multi-param perturbation — documented as Iteration 3 scope)

Known limitations (Iteration 3 scope)

  • Single-param coordinate descent plateaus well short of TS-port convergence. At the browser shape (seq_len=4 d_model=8 d_k=4) the TS port reaches 95% MSE reduction; Rust currently plateaus at <1%. Root cause: each accepted perturbation changes output by ~1e-6 when a single param sits among 2800 others in a smooth SafeTree landscape. Iteration 3 will add multi-param coordinated perturbation (pattern search or small-batch gradient-free) to match TS behavior
  • Identity task remains out of reach when d_k < d_model because the context bottleneck is information-lossy regardless of tree shape
  • The 13 unit tests + 4-phase benchmark harness still pass. Default builds are byte-identical to 0.6.9

v0.6.9

2026-04-15

Added

  • EML Attention — Iteration 1 (experimental): end-to-end joint coordinate descent across all 5 sub-models (Q/K/V/softmax/out)
    • ToyEmlAttention::train_end_to_end(EndToEndTrainConfig) — random-param random-perturbation trials with annealed step; accepts when end-to-end MSE drops on a 16-sample subset
    • EmlModel::{params_slice, params_slice_mut, mark_trained} — public access to the flat parameter vector for composed-model training
    • Small-random init in ToyEmlAttention::new (~±0.05) replaces the all-zeros default that saturated under composition
    • Bounded forward pass: soft-saturation squash v·1e-3 / (1 + |v·1e-3|) wraps raw EmlModel::predict outputs so composition can't produce Inf/NaN MSE when the tree saturates at exp(20) ≈ 4.85e8
  • Go/no-go gate passes on the per-position-mean learnable task
    • Measured Iteration-1 result at the reference shape: baseline MSE 2.13 → final 0.90 = 57.8% reduction in 3 rounds
    • 5 of 5 gate criteria PASS: G1 MSE reduction ≥ 5%, G2 p99 ≤ 5 µs (observed 2 µs), G3 timings finite, G4 JSON roundtrip, G5 polynomial scaling
  • 4-phase benchmark now reports phase2_baseline_mse and phase2_mse_reduction alongside phase2_final_mse so future iterations can quantify delta against this baseline

Browser demo

  • /clawft_eml-notebook gains an "Iteration 1 mode" toggle that runs end-to-end coordinate descent (trains all 5 sub-models jointly) instead of the Iteration-0 out_model-only self-distillation
  • Live training log shows baseline MSE, per-round MSE, % reduction, elapsed time

Known limitations (deferred to Iteration 2)

  • Identity task does not converge. The Rust EmlTree composition saturates on identity because the nested eml(x, y) can hit y ≤ 0, triggering ln(MIN_POSITIVE) ≈ -744 followed by exp(20) ≈ 4.85e8 clamping. Single-param coordinate descent cannot escape. Iteration 2 will either swap the tree formulation (closer to the TS port's eml(v·c0 + c1, |v| + c2 + 1) shape) or add a proper trainable output projection.
  • Q/K/V participation is modest. Joint CD over 328 params reduces MSE by ~58% but plateaus near the bound-1 region where a majority of heads remain saturated. Multi-param coordinated perturbation or a saturation-safe tree would unlock further gains.

Notes

  • The 13 unit tests and the 4-phase benchmark harness remain unchanged.
  • Default builds are byte-identical to 0.6.8.
  • Feature flag experimental-attention on eml-core still gates the entire module.

v0.6.8

2026-04-15

Added

  • EML Attention — Iteration 0 (experimental): first step toward a gradient-free EML-Transformer for WeftOS
    • ToyEmlAttention in eml-core composed of 5 EmlModel instances (Q/K/V projections, learned softmax, output projection) with f64 matmul between them — pragmatic hybrid approach, consistent with the design note's Iteration 4+ guidance
    • new(name, d_model, d_k, seq_len, depth) with toy-scale guards (d_model ≤ 32, seq_len ≤ 8, depth ∈ 3..=5)
    • forward, record, train, to_json/from_json, AttentionError
    • Self-distillation training: train() runs a forward pass on the buffer, derives per-submodel targets, then runs the existing coordinate-descent loop on softmax_model (row-softmax distillation) and out_model (context → target)
    • Feature flag experimental-attention on eml-core (off by default); default builds are unchanged
    • 13 unit tests covering construction, shape enforcement, numerical-softmax stability, serialization roundtrip, training-round counting, and the benchmark sanity gates
  • 4-phase benchmark harness run_benchmark + AttentionBenchmark mirroring clawft-weave/src/commands/bench_cmd.rs (Warmup → Transport → Compute → Scalability):
    • Phase 1: single forward-pass timing + JSON roundtrip
    • Phase 2: convergence on a memorizable identity task (96 samples, 3 rounds)
    • Phase 3: inference latency mean + p99 over 256 random inputs
    • Phase 4: (seq_len, d_model) scaling sweep with per-point param count
  • Docs: new docs/src/content/docs/weftos/eml-attention.mdx page
  • Live demos:
    • /clawft_eml-attention — pure-JS Iteration 0 forward-pass demonstrator (WASM rebuild follows in 0.6.9)
    • /clawft_eml-notebook — Python Colab notebook that trains a Python mirror and exports JSON directly loadable by Rust EmlModel::from_json
  • Planning:
    • .planning/development_notes/eml_model_development_assessment.md — Iteration 0 plan, design rationale, 5 explicit go/no-go criteria
  • CHANGELOG + release notes updated for 0.6.8

Notes

  • EML Attention is additive. Default builds are byte-identical to 0.6.7.
  • Iteration 0 deliberately keeps Q/K/V at default init — only softmax_model and out_model train in this release. End-to-end coordinate descent across all five sub-models is Iteration 1.
  • The two inter-projection matmuls (Q·Kᵀ and A·V) run in f64, not EML trees. Pure-EML matmul is a research problem; the design note treats hybrid as acceptable through Iteration 4+.

v0.6.7

2026-04-15

Added

  • Quantum Cognitive Layer (experimental): neutral-atom quantum acceleration for ECC
    • QuantumBackend trait with object-safe async interface and shared types (JobHandle, QuantumResults, JobStatus, BackendStatus, EvolutionParams, QuantumError)
    • quantum_register: deterministic force-directed graph → 2D atom-position layout with device-constraint enforcement
    • Live PasqalBackend targeting Pasqal Cloud (EMU_FREE / EMU_TN / Fresnel):
      • Auth0 client_credentials flow with 24h token caching and 300s refresh skew
      • POST /api/v1/batches, GET /api/v2/jobs/{id}, GET /api/v1/batches/{id}/results, PATCH /api/v2/jobs/{id}/cancel
      • Best-effort Pulser abstract-repr JSON builder for AnalogDevice + global Rydberg channel
      • submit_raw_sequence() escape hatch for Python-generated Pulser JSON
      • Counts → per-atom Rydberg probability parsing
    • BraketBackend stub for QuEra Aquila on AWS Braket (interface only; live impl deferred)
    • Feature flags quantum-pasqal and quantum-braket (both off by default; experimental in 0.6.x)
    • T0 wiremock integration tests (14 tests exercising full auth + REST path)
    • T1/T3/T4 #[ignore]-gated live tests against real Pasqal endpoints
  • Docs: new docs/src/content/docs/weftos/quantum.mdx page covering architecture, ECC integration, 4-tier test strategy, and roadmap
  • Planning: .planning/development_notes/pasqal-integration.md extended with dual-backend strategy (§13), tiered dev environments (§14), 0.6.x experimental scope (§15), and 4-phase test runbook (§16)

Notes

  • The quantum layer is additive. Default builds are byte-identical to 0.6.6.
  • build_sequence_json output is best-effort — the exact Pulser to_abstract_repr() schema is not fully stable. Runbook includes a Python golden-JSON validation path.

v0.6.6

2026-04-14

Added

  • 18 Knowledge Graph tasks (KG-001 through KG-018) completing Sprint 17
  • EML Score Fusion (KG-001): Hybrid query combining keyword, graph, community, and type scoring
  • Community Summaries (KG-002): GraphRAG-style summary generation for detected communities
  • Causal Chain Tracing (KG-003): Typed BFS with natural-language explanations
  • RFF Spectral Analysis (KG-004): O(m) approximate spectral analysis using random Fourier features
  • Info Gain Pruning (KG-005): Redundant evidence filtering based on information gain
  • Data Flow Tracing (KG-006): BFS dependency flow tracing through call chains
  • MCTS Graph Exploration (KG-007): UCB1 + random rollout for knowledge graph traversal
  • Entity Dedup (KG-008): Levenshtein + structural similarity deduplication
  • Geometric Shadowing (KG-009): Age-aware decay with per-edge volatility
  • Multi-hop Beam Search (KG-010): Prioritized traversal with edge priors
  • Sonobuoy Sensor Graph (KG-013): GraphSAGE aggregation + temporal features
  • VQ Codebook Cold-Start (KG-014): K-means++ initialization for new entities
  • Entity Alignment (KG-015): Cross-graph matching via label + structural similarity
  • Conversational Exploration (KG-016): Stateful multi-turn dialogue over knowledge graphs
  • EML Distillation (KG-017): Depth-4 to depth-2 model compression
  • Newman Modularity (KG-018): Global partition quality metric
  • Incremental graph updates and multi-key HNSW indexing
  • New modules: summary.rs, alignment.rs, conversation.rs, sensor_graph.rs, vector_quantization.rs
  • 170+ new tests (1,770 total)

v0.6.5

2026-04-04

Added

  • eml-core standalone crate: Zero-dep (just serde), configurable depth 2-5, multi-head outputs, coordinate descent training (36 tests)
  • 12 EML models across 4 crates: Coherence, governance scoring, restart strategy, health thresholds, dead letter policy, gossip timing, complexity limits, HNSW (distance/ef/path/rebuild), causal collapse, surprise scoring, cluster thresholds, layout tuning
  • Causal collapse prediction: rank_evidence_by_impact() ranks candidate edges by predicted coherence impact via perturbation theory
  • Conversation cycle detection: detect_conversation_cycle() identifies stuck/oscillating conversations via lambda_2 stagnation
  • HNSW EML training infrastructure: HnswEmlManager with 4 models (distance, adaptive ef, path prediction, rebuild trigger), 33 tests

Fixed

  • 66 ExoChain compliance gaps closed: Systematic audit of all mutation paths
  • 75+ EVENT_KIND constants, 21 governance gates, EmlEvent types (Trained, Drift, Saved, Loaded) chain-witnessed
  • 7 ExoChain/governance certification failures resolved

v0.6.4

2026-04-04

Added

  • EML depth-4 multi-head coherence: 50 parameters, 3 output heads (lambda_2, fiedler_norm, uncertainty), 24 tests
  • Two-tier DEMOCRITUS tick loop wired with EML coherence

v0.6.3

2026-04-04

Added

  • O(1) EML coherence approximation: 34-parameter depth-3 master formula predicting algebraic connectivity from graph statistics
  • Based on Odrzywolel 2026, "All elementary functions from a single operator" (arXiv:2603.21852v2)
  • ~100ns prediction vs ~500us Lanczos iteration (5000x speedup), enabling 10,000 Hz tick rate for robotics
  • Self-training: accumulates data during operation, retrains at 50+ samples
  • Convergence verified on 5 standard graph families (K_n, star, cycle, path, Erdos-Renyi)
  • 16 new tests

v0.6.2

2026-04-04

Added

  • Graphify extraction pipeline wired into CLI: Full detect -> extract -> build -> cluster -> analyze -> export pipeline functional
  • weaver graphify rebuild produces graphify-out/graph.json and GRAPH_REPORT.md
  • weaver graphify export loads graph JSON and exports to 7 formats

v0.6.1

2026-04-04

Added

  • Workspace RPC: weft workspace create/list/load/status/delete connected to daemon RPC
  • Cognitive tick auto-started during kernel boot sequence
  • ECC tick auto-computed from calibration bands (0.01ms to 1000ms, was hardcoded at 50ms)
  • weaver graphify ingest delegates to the full pipeline for local directories

Fixed

  • Workspace RPC dispatch routing
  • Cognitive tick startup sequencing

v0.6.0

2026-04-04

Added

  • Cognitum Seed gap sprint: 11 gaps identified and closed across the kernel
  • Tiered kernel profiles (T0-T4): Boot-time calibration selects appropriate resource tier from embedded microcontroller (T0) through GPU server (T4)
  • Auto update check and universal install script

v0.5.5

2026-04-04

Added

  • VectorBackend trait: Pluggable vector search with insert/search/remove/flush interface
  • HNSW backend (default): In-memory approximate nearest neighbor via instant-distance
  • DiskANN backend: SSD-backed vector search via ruvector-diskann v2.1, Vamana graph with product quantization and mmap persistence
  • Hybrid backend: Hot HNSW cache + cold DiskANN store with access-counted promotion, LRU eviction, and merged search results
  • Configurable via [kernel.vector] in weave.toml

v0.5.4

2026-04-04

Added

  • Benchmark v3: 6-phase comprehensive performance suite (1,342 LOC)
  • ESP32-S3 edge benchmark: Compatible with weaver benchmark v3 for edge devices

Fixed

  • Benchmark method names and parameter formats

v0.5.3

2026-04-04

Fixed

  • Benchmark scoring recalibrated: Pi 5 was incorrectly graded A+, now correctly scores B/C

v0.5.2

2026-04-04

Added

  • weaver benchmark: Standardized kernel performance test
  • Benchmark v2: Three-tier testing (RPC, compute, stress)

Changed

  • Kernel enabled by default: No longer requires explicit --features kernel flag
  • ECC RPC dispatch endpoints wired for all ECC commands
  • Per-project kernel runtime directory: Prevents state collision across projects

v0.5.1

2026-04-04

Added

  • clawft-graphify (new crate): 11,896 lines of Rust across 35 modules with 88 tests
  • AST extraction via tree-sitter for Python, JavaScript/TypeScript, Rust, Go
  • Community detection via label propagation with oversized splitting
  • Analysis: god nodes, surprising connections (5-factor scoring), question generation (5 strategies), graph diff
  • 7 export formats: JSON, HTML/vis.js, GraphML, Obsidian vault+canvas, Wiki, Cypher, SVG
  • URL ingestion (tweet, arXiv, PDF, webpage) with SSRF protection
  • CausalGraph bridge, 9th assessment analyzer, HNSW indexing
  • Forensic domain: 14 entity types, 13 edge types, gap analysis, coherence scoring
  • CLI: weaver graphify with 7 subcommands (ingest, query, export, diff, rebuild, watch, hooks)

v0.5.0

2026-04-04

Added

  • Sprint 16 architecture sprint: wasmtime v33 upgrade, security audit
  • ServiceApi: Unified kernel service registration and lifecycle
  • wasip2: Full wasm32-wasip2 target support across all crates
  • Playground phase 3-4: Browser WASM sandbox improvements
  • Browser WASM features: Enhanced client-side execution

Changed

  • Renamed ui/ to clawft-ui/ for workspace clarity

Fixed

  • Docker tarball directory component stripping

v0.4.3

2026-04-04

Added

  • Sprint 14-15 documentation coverage pass: assessment, GUI, browser, plugins
  • Docker Alpine optimization: Build time from ~30min to ~2min, image ~50MB to ~15MB

Fixed

  • clawft-plugin-treesitter added to crates.io publish pipeline
  • clawft-services added to crates.io publish pipeline
  • Handle 'already exists' error gracefully in crates.io publish

v0.4.2

2026-04-04

Added

  • Full boot sequence in ExoChain log: INIT, CONFIG, SERVICES, NETWORK, READY phases visible
  • Rich markdown rendering: Headings, bold, italic, code blocks, links, lists in chat bubbles
  • Document preview panel: Click internal doc links to open in a side panel
  • Plugin marketplace scaffold: create-weftos-plugin CLI for authoring new plugins
  • Rustdoc JSON-to-MDX converter: Generates native Fumadocs API pages from Rust documentation
  • clawft-plugin-npm: Node.js dependency parsing via package.json and lockfiles
  • clawft-plugin-ci: GitHub Actions and Vercel config parsing
  • MeshCoordinator: Real mesh coordination with AssessmentMessage protocol and gossip discovery
  • 25 crates in workspace, 48 ADRs

Fixed

  • crates.io pipeline: 12 crates now publish automatically on tag

v0.4.1

2026-04-03

Added

  • Pluggable Analyzer Registry: AnalyzerRegistry with Analyzer trait for extensible assessment
  • 5 Built-in Analyzers: ComplexityAnalyzer, DependencyAnalyzer (Cargo.toml/package.json), SecurityAnalyzer (secrets, .env, unsafe), TopologyAnalyzer (Docker, K8s), DataSourceAnalyzer (connection strings, S3, APIs)
  • Assessment Diff: Compare current vs. previous assessment (files added/removed, findings new/resolved)
  • Assessment Hooks: weft assess hooks -- install/uninstall post-commit and pre-push git hooks
  • Assessment Dashboard: /assess route with project stats, findings list, peer comparison
  • Assessment Config: Load trigger configuration from .weftos/weave.toml
  • Multi-project Namespace: [project] section in weave.toml with org isolation
  • PR Assessment Gate: weft assess --scope ci --format github-annotations in pr-gates.yml
  • Cargo Check Gate: Workspace-wide cargo check in PR pipeline
  • Guided Tour Prompts: 4 categories (getting started, architecture, assessment, security)
  • WITNESS Chain Footer: Chain integrity display in ExoChain log panel
  • Docs-assets Manual Dispatch: workflow_dispatch with skip_wasm input

Fixed

  • Browser WASM CI: Pinned wasm-bindgen-cli to v0.2.108 (matches Cargo.lock)
  • Wrong URLs: Fixed all github.com/clawft/clawft to weave-logic-ai/weftos and ghcr.io/clawft/clawft to weave-logic-ai/weftos across 6 doc files
  • Test badge: Updated from 3,300+ to 3,900+ on homepage
  • Crate count: Updated from 22 to 23 (added clawft-rpc)
  • Glossary: Added entries for clawft-rpc, AssessmentService, Analyzer/AnalyzerRegistry

v0.4.0

2026-04-03

Added

Sprint 14: WASM Sandbox, Assessment Framework, CLI Compliance, 28 ADRs

  • WASM Sandbox (/clawft/ route): Browser-based WeftOS agent running clawft-wasm with 1,160-segment RVF knowledge base, RAG-powered documentation search, local mode (no API key needed), LLM mode with provider routing, ExoChain log panel with live audit trail, runtime introspection, and "New chat" reset
  • CDN Asset Delivery: GitHub Releases cdn-assets tag with Vercel API route proxy (/api/cdn/[...path]), edge-cached via s-maxage, blob URL WASM loading for MIME-type bypass
  • clawft-rpc (new crate): Shared RPC client extracted from clawft-weave. DaemonClient, Request/Response protocol types, connect_or_bail() convenience. Both weft and weaver CLIs now share this crate
  • AssessmentService (kernel): New SystemService with file scanning, tree-sitter symbol extraction (Rust/TypeScript), cyclomatic complexity analysis, scope support (full/commit/ci/dependency), peer coordination (link/compare via local path or HTTP URL), ExoChain audit logging
  • weft assess CLI: run, status, init, link, peers, compare subcommands with daemon-first RPC and local fallback
  • Cross-project coordination: Peer registry (.weftos/peers.json), assessment comparison across projects, validated on clawft (412K LOC) and weavelogic.ai (801K LOC)
  • Docs site: Previous/next navigation, "Edit on GitHub" links, glossary (25+ terms), troubleshooting section, assessment workflow guide, deployment SOPs
  • 28 ADRs (ADR-020 through ADR-047): Kernel phase responsibilities, CLI daemon compliance, ExoChain mandatory audit, Noise encryption, Ed25519 identity, post-quantum dual signing, CBOR wire format, three-branch governance, effect algebra, forest of trees architecture, three operating modes, and 16 more

Changed

  • CLI Kernel Compliance (ADR-021): 32 weft commands migrated from direct file I/O to daemon-first RPC with local fallback. Commands: cron (6), assess (4), security (1), skills (7), tools (6), agents (3), workspace (8), other (3)
  • clawft-weave: DaemonClient and core protocol types moved to clawft-rpc, re-exported for backward compatibility. 5 new daemon dispatch endpoints (assess.*)

Fixed

  • WASM JS glue MIME-type: load via blob URL to bypass CDN application/octet-stream
  • GitHub Releases CORS: server-side proxy instead of Vercel rewrites (redirect chain exposed missing CORS headers)
  • Vercel CDN caching: s-maxage=604800 + stale-while-revalidate=86400 on proxied assets

v0.3.0

2026-03-31

Added

Sprint 13: GUI Integration, Pipeline Wiring, Paperclip Patterns, HTTP API

  • GUI Integration: KernelDataProvider for live kernel state in React, ThemeSwitcher component with runtime theme selection, BudgetBlock displaying agent budget consumption
  • Pipeline Wiring: Config-based scorer and learner instantiation via factory functions, skill mutation pipeline with GEPA-driven prompt evolution
  • Paperclip Patterns: Company and OrgChart organizational models, HeartbeatScheduler for liveness monitoring, GoalTree for hierarchical objective tracking
  • HTTP API: /execute, /govern, and /health endpoints for external kernel interaction
  • Full WASI Support: All 10 publishable crates compile for wasm32-wasip2 target (10/10)
  • Windows ARM: Re-enabled aarch64-pc-windows-msvc target with native-tls backend
  • Testing: Property-based tests, fuzz harnesses, and benchmark suites across kernel and core crates
  • Integration Docs: Paperclip integration guide, OpenClaw connector docs, local inference setup, cloud provider configuration, RuFlo orchestration reference

v0.2.0

2026-03-31

Added

Sprint 12: Block Engine, Theming, GEPA, Local LLM

  • Block Engine (legacy, superseded) (gui/src/engine/, gui/src/blocks/): BlockRegistry, BlockRenderer, and Zustand+Tauri StateStore. 10 composable block components (Text, Code, Status, Table, Tree, Terminal, Button, Column, Row, Grid, Tabs) with recursive rendering and JSON descriptor-driven layout. Historical entry: this Zustand+Tauri+React engine was retired in [0.6.19] and replaced by the egui canon shell (crates/clawft-gui-egui, ADR-001 row-aligned canon primitives + the VSCode panel that hosts the WASM build). See ADR-005 / ADR-007 / ADR-013 / ADR-038, all marked Superseded by the egui shell.
  • Theming System (gui/src/themes/): 4 built-in themes (ocean-dark, midnight, paper-light, high-contrast with WCAG AAA compliance). CSS variable bridge via --weftos-* custom properties, ThemeProvider with runtime switching, ANSI palette mapping, and Tailwind integration.
  • Context Compression (crates/clawft-core/src/agent/context.rs): Sliding-window context management with configurable max_context_tokens (default 8192). First-sentence summarization for older messages. Opt-in via builder.with_compression(config).
  • GEPA Prompt Evolution (crates/clawft-core/src/pipeline/): TrajectoryLearner replacing NoopLearner with trajectory collection, pattern extraction, and 4 prompt mutation strategies (rephrase, add examples, remove ineffective, emphasize). FitnessScorer replacing NoopScorer with 4-dimension weighted scoring (relevance, coherence, completeness, conciseness).
  • Local LLM Provider (crates/clawft-llm/src/local_provider.rs): OpenAI-compatible provider for Ollama, vLLM, llama.cpp, and LM Studio. Key-optional auth, streaming, model listing. Factory methods: LocalProvider::ollama(), ::vllm(), ::llamacpp(), ::lmstudio().

v0.1.0

2026-02-17

Added

Core

  • 9-crate Rust workspace: types, platform, core, llm, tools, channels, services, cli, wasm
  • Agent loop with configurable retry and backoff
  • 6-stage LLM pipeline: Classifier, Router, Assembler, Transport, Scorer, Learner
  • Platform abstraction layer with traits for HTTP, filesystem, environment, and process
  • Native platform implementation for Linux/macOS/Windows
  • Tool registry with dynamic registration and dispatch
  • Event-driven architecture with typed message passing

CLI

  • Binary weft with subcommand-based interface via clap derive
  • agent subcommand for running agent sessions
  • gateway subcommand for HTTP/WebSocket gateway server
  • status subcommand for system health and diagnostics
  • channels subcommand for managing channel integrations
  • cron subcommand for scheduled task management
  • sessions subcommand for session lifecycle management
  • memory subcommand for agent memory operations
  • config subcommand for configuration management

Tools

  • File operations: read, write, edit, list with path validation
  • Shell execution with configurable timeout and working directory
  • Agent spawn for sub-agent orchestration
  • Memory tool for persistent key-value storage
  • Web fetch with HTTP client and response parsing
  • Web search with provider abstraction
  • Message tool for inter-agent communication

Channels

  • Telegram channel plugin with bot API integration
  • Slack channel plugin with Web API and Events API support
  • Discord channel plugin with gateway WebSocket connection

Services

  • Cron scheduling service with cron expression parsing
  • Heartbeat service for liveness monitoring

WASM

  • Platform stubs for WebAssembly target (HTTP, FS, Env, Process)
  • Feature flags (native-exec, channels, services) for conditional compilation
  • WASM-compatible build profile with size optimizations

Security

  • CommandPolicy with allowlist and denylist for shell command execution
  • UrlPolicy with SSRF protection (private IP blocking, scheme restrictions)
  • Path traversal prevention in file operations

Infrastructure

  • GitHub Actions CI workflow with build matrix (stable, nightly, WASM)
  • GitHub Actions release workflow with cross-compilation and asset publishing
  • GitHub Actions benchmark workflow for performance regression tracking
  • GitHub Actions WASM build workflow for browser/worker targets
  • Docker multi-stage build with FROM scratch minimal image
  • Release profile with LTO, strip, single codegen unit, and abort-on-panic
  • 1,029 tests across the workspace

On this page

Release Notesv0.8.0AddedFixedNotes / residualsv0.6.20AddedDesktop GUI (egui) — 0.8.0 wave + app graduationsWeb dashboard (clawft-ui)Agent core, multi-agent, voice, channelsDaemon / kernel plumbingVector-first leaf display (experimental / preview)ChangedFixedSecurityv0.6.19AddedM1.5 — App Layer TrilogyCanon Primitive System (21 components)GUI + VSCode ExtensionM1.5.1 — Built-in System Components (α)Sensor FrameworkExoChain + IPCKernelEML-Swap Learnable-Model Wirings (Finding #5 + #7 + #9)FixedKnown Issuesv0.6.18Fixedv0.6.17Leaf Push Protocolv0.6.16Addedv0.6.15Mesh Noise Encryption Wired End-to-EndExoChain Mesh Audit Trail (PR #24)CI Fixv0.6.14Mesh Time SynchronizationNoise Protocol Encryptionweave.toml Config LoadingAgent Analysis CommandsTree-sitter ast-extract FixedOther Fixesv0.6.13Mesh Transport Boot IntegrationAdaptive HNSW: Tiered Dimensional Searchv0.6.12Universal Topology BrowserCLI CommandsTree Calculus + EML AST ExtractorLSP-Based Code IntelligenceSecurityVault Cultivation (v0.6.11)CI/CD FixesSymposium: Universal Topology BrowserInternalv0.6.11Addedv0.6.10AddedChangedKnown limitations (Iteration 3 scope)v0.6.9AddedBrowser demoKnown limitations (deferred to Iteration 2)Notesv0.6.8AddedNotesv0.6.7AddedNotesv0.6.6Addedv0.6.5AddedFixedv0.6.4Addedv0.6.3Addedv0.6.2Addedv0.6.1AddedFixedv0.6.0Addedv0.5.5Addedv0.5.4AddedFixedv0.5.3Fixedv0.5.2AddedChangedv0.5.1Addedv0.5.0AddedChangedFixedv0.4.3AddedFixedv0.4.2AddedFixedv0.4.1AddedFixedv0.4.0AddedSprint 14: WASM Sandbox, Assessment Framework, CLI Compliance, 28 ADRsChangedFixedv0.3.0AddedSprint 13: GUI Integration, Pipeline Wiring, Paperclip Patterns, HTTP APIv0.2.0AddedSprint 12: Block Engine, Theming, GEPA, Local LLMv0.1.0AddedCoreCLIToolsChannelsServicesWASMSecurityInfrastructure