Download Latest Version Semiotic v3.13.3 source code.zip (88.4 MB) Google Add to Preferred Sources
Home / v3.13.1
Name Modified Size InfoDownloads / Week
Parent folder
semiotic-3.13.1.provenance.json 2026-10-26 1.6 kB
semiotic-3.13.1.sbom.cdx.json 2026-10-26 80.6 kB
semiotic-3.13.1.tgz 2026-10-26 6.5 MB
semiotic-3.13.1.tgz.sha512 2026-10-26 150 Bytes
README.md 2026-10-26 4.8 kB
Semiotic v3.13.1 source code.tar.gz 2026-10-26 84.0 MB
Semiotic v3.13.1 source code.zip 2026-10-26 87.3 MB
Totals: 7 Items   177.9 MB 0

Added

  • EventDropChart sourceRail.side: "right" places producer tiles on the right edge. The plot insets from the right, travel starts at those tiles, and the late gutter stays on the left.
  • LiteLLM evaluation provider with configurable proxy URLs, model pricing discovery, reasoning-token cost estimates, and spend checks that reject partially priced model deployments. Run it with npm run eval:ai:litellm.

Fixed

  • Keyboard focus on a TemporalHistogram or RealtimeHistogram bin stays on that bin when the scene rebuilds, as it does on a data push or when a linked selection restyles the bars. A histogram that publishes linkedHover and consumes a selection lost focus on each arrow press, so its tooltip showed on every other press and focus never moved past the first bin.
  • Render preparation and inspection return blocked reports for renderer errors. Render memoization preserves color-map insertion order, and error observers cannot leak synchronous exceptions or rejected promises into agent workflows.
  • MCP widgets enforce SVG and CSS allowlists, including local-only mask references. Widget evidence identifies the final themed, sanitized SVG.
  • Canvas none paint and accessible mark counts agree with the rendered marks. Stacked domains retain zero-sum samples, while heatmap ticks, brushes, crosshairs, and marginal bins follow the visible data extent.
  • Atlas queries now scope evidence references to relevant graph relations and matching traces. Preparation rejects duplicate trace IDs and measure rows; derived section totals retain the most uncertain status regardless of row order and distinguish IDs containing delimiters.
  • Evidence publication checks resolve claim references, including upstream observations and artifact transformations, and reject missing, ambiguous, or cyclic references. Model-authored support requires explicit human review.
  • MCP cancellation now handles zero and empty-string request IDs without changing caller-visible IDs or confusing numeric and string identities. Every MCP scenario suite now rejects missing or stale executable artifacts.
  • MCP startup validates profiles and options, supports equals-form arguments, and rejects configuration typos that previously exposed developer tools. All tool responses now share a configurable size ceiling before child IPC and transport serialization, including SDK-generated errors. Shutdown signal handling remains active between tool calls so idle child cleanup cannot swallow a concurrent termination signal.
  • MCP tool execution runs in bounded child processes, so deadlines and cancellation stop synchronous rendering and native PNG work while the server remains responsive. HTTP and stdio share argument limits; stdio also caps each input line before JSON parsing. Chart creation reuses one render for its SVG, evidence, and widget instead of rendering repeatedly.
  • MCP processes load the optional DOM runtime only for interactive widgets, avoiding repeated startup work on schema lookups, diagnostics, artifact audits, and static renders.
  • MCP HTTP request quotas are isolated by client, refill continuously, and keep bounded accounting alongside the shared concurrency cap. Forwarded client addresses require explicit trusted-proxy configuration. Authorization rejects trailing credentials and uses constant-time token comparison.
  • Unknown chart names matching JavaScript prototype properties no longer claim built-in accessibility capabilities.
  • Categorical heatmap axes accept string tickValues. Each string is the column or row key and is drawn at that cell's center.
  • A log axis keeps an explicit positive end when no positive sample remains, including an empty axis. The open end stays one decade away. [1, 10] is used only when neither end is fixed.
  • A long heatmap axis no longer throws when it sorts its keys or formats a date axis. Extents and the sorted key list are copied in a loop.
  • A candlestick log domain includes open and close, so a positive body stays visible when the wick low is not positive.
  • An empty log axis with only a lower bound opens one decade above that bound. An explicit upper bound still opens one decade below it.
  • A line with stroke none stays unstroked in SVG when a stroke gradient is set, matching canvas. The fill under that line still paints.
  • Update the MCP SDK's transitive ip-address dependency to 10.7.4, fixing CVE-2026-111997 and clearing the release security audit.
  • Update transitive body-parser, fast-uri, undici, and zod so the preflight npm audit gate is clean.
  • Align Vitest's coverage and UI packages with the test runner so release validation uses a supported dependency combination.
Source: README.md, updated 2026-10-26