Releases: Craftiee/circuitarium-mcp
Releases · Craftiee/circuitarium-mcp
Release list
Circuitarium MCP v0.2.0
[0.2.0] - 2026-07-26
Added
- Uniform
electronics.mcp/0.2result envelopes and capability discovery. - Portable experiment validation.
- CRUMB 1.3.5 Unity-era file inspection, validation, and bounded semantic
analysis. - Version-pinned component and IC catalogs.
- Five synthetic CRUMB fixtures.
- Cross-model handoff guards using project digests.
- Default source redaction and bounded handling for EEPROM and annotation data.
- Six new read-only CRUMB tools:
crumb_list_projects(workspace discovery
with digests),crumb_get_component(single-component detail with windowed
firmware source),crumb_export_netlist(jumper-collapsed nets with
VCC/GNDnaming and optional saved-switch-state merges),
crumb_check_design(static electrical rule checks with evidence-tagged
findings),crumb_bom(bill of materials by decoded part identity), and
crumb_ic_reference(IC pinout lookup by prefab id or label query). - A fourteenth tool,
crumb_compare_designs, performs digest-guarded,
read-only comparison of controlled baseline and candidate.crufiles under
crumb.unity/1.3.5. It reports bounded root/component changes, distinguishes
byte identity from modeled equivalence, retains opaque-change evidence
without disclosing payloads, and never writes either input. - A Unity-first adapter plan with comparison, lossless-editing, and
component-writer acceptance gates. - New
review-crumb-designandidentify-ic-pinoutcapability workflows and a
netvocabulary entry. - Semantic-analysis diagnostics for duplicate component ids and for
schema-mismatched structural/interconnect components that still shape
topology inference. - Experiment validation now rejects one pin appearing on two nets
(endpoint-net-conflict) and warns when a probe targets an endpoint on no
net (probe-endpoint-unconnected). - A documented error-code table (including fixed file, comparison, and parser
budgets mapped toQUOTA_EXCEEDED) in the contract. - Adversarial-review hardening: project digests hash the raw file bytes (not
the decoded text), electrical rules and net naming consult a full
pre-truncation terminal index so oversized nets cannot hide shorts, ERC
finding id lists are bounded to the published schema, supply rules are
evaluated per supply with a separatecross-supply-rail-tieinfo finding,
shorted signal generators are reported (source-terminals-shorted),
findings on switch-merged nets state their conditionality, per-component
diagnostics match exact path segments, and workspace-listing digests stop
at a per-call byte budget (digest-budget-exhausted). - Cross-review follow-up hardening: single oversized connection groups retain
complete internal terminal membership for netlist/ERC, focused component
reads cannot disappear past response bounds, switch provenance survives
later unions and carries explicit truncation metadata, mixed supply roles
stay deterministically unnamed, and pagination cursors bind topology and
switch-state options. - Known typed payloads now fail atomically on malformed vectors, quaternions,
tie points, boolean arrays, and scalar lexical forms instead of silently
losing terminals or parameters. XML work limits cap depth, element count,
component count, and per-component payload count before analysis. - Workspace enumeration now streams directory entries under a tested scan
quota, directly tests symlink and containment behavior, and returns digest,
size, and modification time from one stable opened snapshot. - Neutral endpoint identity now uses collision-free tuples, so colons in
component IDs or pin names cannot create false net conflicts. - A byte-preserving CRUMB round-trip core now retains unknown payloads and
lexical XML exactly, indexes edits by guarded byte span, validates every
replacement artifact, and documents canonical spellings for future mutation
tools. Public write tools remain disabled pending in-game reopen evidence. - Circuitarium MCP umbrella branding and the CRUMBLE identity for
CRUMB-specific integrations. - A CRUMBLE integration guide documenting evidence profiles, stable protocol
identifiers, and redistribution boundaries. - Apache-2.0 licensing and public contribution, security, conduct, support, and
provenance policies. - Public-repository CI and collaboration templates.
- Explicit unofficial-project and non-redistribution notices.
- Portable MCP client setup examples.
- A non-destructive fixture verification workflow.
- Machine-readable compatibility profiles and evidence vocabulary.
- Explicit truncation metadata for untrusted design names, nested component
data, connection membership, summaries, and diagnostics. - Typed
INVALID_ARGUMENTenvelopes for malformed registered-tool calls while
retaining strict published input schemas. - An installable
circuitarium-mcpexecutable with an allowlisted artifact,
installed-package MCP handshakes, and release-version coherence checks. The
binary is the only supported package API in this release. - Official-Registry metadata through matching
mcpNameandserver.json
identities. - A manifest-v0.3 MCPB bundle for one-click Claude Desktop installation, built
from the exact verified npm tarball and smoke-tested through all 14 tool
registrations plus a synthetic ERC call. - An
npx-first onboarding path with copyable Codex, Claude Code, VS Code,
LM Studio, and Jan configurations and a reproducible terminal GIF generated
only from live synthetic-fixture output. - SHA-pinned CI, package/coverage gates, dependency review, CodeQL scanning,
and a protected tag-driven release workflow that publishes verified bytes to
npm before registering the server with the MCP Registry and creating a
GitHub Release. - A controlled-observation issue form for community CRUMB format evidence.
Changed
- The CLI's read commands now invoke the same registered MCP tools as the
stdio server and print identical result envelopes; newlist,component,
netlist,check,bom, andiccommands were added. Only the fixture
generate/generate-allmaintenance commands still write directly and
accept--force. - Error classification uses typed error classes instead of message-substring
matching, so reworded messages can no longer silently downgrade
PATH_DENIED,UNSUPPORTED_FORMAT, orFORMAT_INVALIDto
INTERNAL_ERROR. Oversized files now returnQUOTA_EXCEEDEDinstead of an
internal error, and non-file paths returnNOT_FOUND. crumb_inspect_designandcrumb_validate_designcheck
expectedProjectDigestbefore any parse work, matching
crumb_analyze_design.- Diagnostic truncation is now severity-aware: when more than 200 diagnostics
exist, errors are retained ahead of earlier warnings. - Tool results serialize the envelope compactly in text content
(structuredContentis unchanged), roughly halving per-call token cost. serializeCruvalidates its own output by default and throws on
structurally invalid saves.- The fixture-kind enum is defined once and shared by input and output
schemas, so an unregistered kind can no longer pass input validation and
fail after writing a file. - An invalid 28C16 EEPROM image no longer emits a misleading generic
payload-schema-mismatch diagnostic; the specificinvalid-eeprom-image
diagnostic and an explanatory component note remain. - Connection-group inference uses an iterative union-find, removing a
stack-exhaustion risk on adversarial saves. scripts/verify-fixtures.tsresolves the fixture directory relative to the
script location instead of the current working directory, and the test glob
is recursive.- The primary workspace variable is now
CIRCUITARIUM_MCP_ROOT;
ELECTRONICS_MCP_ROOTremains a compatibility fallback. - Existing
electronics_*,crumb_*, andelectronics.mcp/0.2identifiers
remain stable across the branding change. - Compatibility claims now distinguish controlled saves, synthetic fixtures,
installed-build observations, public electronics knowledge, and
non-redistributed third-party examples. - Artifact metadata now uses
adapterTestedCompatibilityso adapter evidence
cannot be mistaken for an input-file origin claim. - Local-backend data egress is reported as host-dependent, and fixed fixture
generation is distinguished from general circuit building. - Pull-request CI no longer duplicates branch-push and pull-request matrices;
macOS compatibility coverage and a non-blocking current-Node canary are
included. - The executable package publishes the MCP SDK's bundled, shrinkwrapped,
audited dependency tree so consumers retain the security override used by
repository CI. - Release packaging builds and prepares bundled runtime metadata only inside
per-run isolated staging and tarball workspaces. - Unity parsing now enforces valid UTF-8 and XML 1.0 declarations, namespace
well-formedness, finite decimal and signed-int32 lexical forms, exact boolean
spellings, float32 modeling where Unity serializes single-precision values,
and canonical thumbnail base64. - Stable CRUMB byte reads are capped at 64 MiB, semantic XML documents at
3,145,728 characters, and comparison pairs at 5 MiB combined, with a 1 MiB
parsed-text-node cap, a 100,000-markup-delimiter cap, and a 64-key aggregate
budget for unknown payload observations per component. - Partial-node comparison retains conservative
opaque-payload
classification alongside narrower modeled changes; unused, well-formed
namespace declarations remain representation-neutral.