Changelog
Customer-facing changes to the Roboticks platform, SDK, CLI, runner, and documentation.2026-05-26 — Wire schema v2, per-test-case artifacts, AI surfaces
Wire contract — schema v2
- Bumped
roboticks_schema_versionto2. The platform supports v2 and v1 (one-back); v1 uploads keep working with a legacy adapter that lands per-test-case artifacts under the run-level prefix instead of per-case sub-folders. - New required testcase property:
roboticks.nodeid(the pytest nodeid). Drives the deterministic per-test-case S3 prefixtest-runs/{run_id}/test-cases/{sha256(nodeid)[:16]}/. - New optional, repeatable testcase property family:
roboticks.attach.{kind}, one per file registered via the newattach_artifact()API. The runner uploader walks them and posts each file with{nodeid, kind}to the per-test-case prefix. - Full reference: SDK wire contract. Narrative: testing wire contract.
SDK
- New module
roboticks.artifactsand top-level exportattach_artifact(path, *, kind=...)for registering per-test files (MCAPs, screenshots, JSONL traces). Reserved kinds:KIND_MCAP,KIND_LOGS,KIND_ATTACHMENTS; custom single-segment labels accepted. - Pytest plugin emits
roboticks.nodeidon every testcase + oneroboticks.attach.{kind}property per attached file. Added thread-local active-test resolution soattach_artifact()doesn’t need plumbing. - See SDK overview → attach_artifact and pytest plugin.
CLI
- New:
rbtk test watch <run-id>— live-stream a run’s status from queued → running → completed without leaving the terminal. - New:
rbtk test cases <run-id>— list test cases that ran inside a run with their per-test-case S3 prefix androboticks.confirmslinks. - New:
rbtk test files <run-id> [--nodeid …] [--prefix …] [--download]— list or download per-test-case artifacts. Local layout mirrors S3 so files stay grouped under the test that produced them. The oldrbtk test artifactsremains as a hidden alias. rbtk test cloudnow prints a clickable workspace URL alongside the run ID, and supports--no-confirm-chargefor a price-quote dry-run.
MCP
- New orchestration tool
trigger_cloud_test_runreturns aworkspace_urlderived from the org slug so an LLM agent can hand the link straight to the user. - New tools
list_test_run_test_cases,watch_test_run, anddownload_test_run_filesmirror the new CLI surface for LLM-driven sessions.
Platform — AI features
A new wave of inline AI surfaces shipped across the product, each backed by a typedAITaskType with fixed model routing and a fixed token_cost. All are metered in the org’s monthly ai_tokens grant (Free 100 k / Team 5 M / Enterprise ∞).
- Test debugging: inline log-anomaly highlighting on the Logs page; cross-run flakiness analysis on test-case detail; sim-vs-real run comparison on sim runs.
- Requirements & traceability: four new requirement-detail assists (INCOSE quality, verification-method, duplicate / contradiction, standards-clause linkage), chat-with-document on the Requirements Upload page, gap explanation + test-suggestion on uncovered matrix rows. New shared
<AIAssist>React primitive for inline row assists. - Evidence & standards: evidence-pack narrative (Opus), pre-audit Q&A and completeness gate per pack, standards coverage delta and plain-English clause summaries, weekly AI digest on the Posture dashboard.
- Search: new
/search/aiendpoint — natural-language queries (e.g. “failing tests on main from last week”) parsed by Haiku into structured filters with deterministic click-through URLs. - Doc set: AI overview, test debugging, requirements & traceability, evidence & standards, NL search.
Integrations
- Clarified the pricing model: BYO test-result ingest is free on every tier (JUnit-with-confirms, MCAP, SARIF 2.1.0). The $149/connector/month fee covers the requirements-side and certified-static-analysis catalog only.
- BYO connector marketplace exposes new fields per entry:
supported_sync_modes(cloud_poll/cli_push/webhook),primary_sync_mode,partner_status(not_applied/pending/active/denied),cli_setup_doc_url,v1_ready. The Add button is disabled for pre-v1 connectors so the catalog can surface the roadmap without misrepresenting availability.
Platform — internal cleanup
- Backend permissions and topology vocabulary renamed
sessions→test_runs(no aliases). API key scopes (project:read:test_runs), permission columns, schema types, and admin dashboards all carry the V&V vocabulary now. - Migrations
14_rename_permission_sessions_to_test_runs.pyand15_rename_test_job_session_id_to_test_run_id.pycomplete the rename in the DB.
2026-05 — V&V pivot
Roboticks pivoted from robot fleet management to audit-grade test CI for ROS2. This is a clean rebuild around the V-model: requirements ingestion, traceability, evidence packs, and standards-feed alerting.Platform
- GitHub App is the canonical integration. Install once; per-PR Check Runs report coverage delta.
- Requirements engine ingests ReqIF (Polarion, Jama, codeBeamer, DOORS), PDF (LLM-extracted), inline YAML, or manual entry.
- Traceability engine computes per-requirement coverage state (confirmed / partial / regression / unconfirmed / gap); matrix UI; change-impact analysis on PRs.
- Runner pools — hosted Gazebo Harmonic / Webots / ROS2 (metered sim minutes) and self-hosted via the
roboticks-runnerGo binary (free compute). Air-gapped mode on Enterprise. - Evidence packs — PDF + ReqIF + ZIP, tamper-evident hash chain, 10-year S3 Glacier Deep Archive retention.
- Standards feed — pin standards (ISO 10218, IEC 61508, EU MR 2023/1230, etc.); alerts on amendments touching pinned requirements.
- LLM triage — “why did this fail?” + “suggest tests for this requirement.”
SDK
- New
roboticksPyPI package:@confirms/@tags/@requires_sim/@deadlinedecorators, pytest11 plugin, rclpy assertion helpers, MCAP capture, launch_testing helpers, fault injection. - New
roboticks_cppament_cmake INTERFACE library:ROBOTICKS_CONFIRMS(...)macro, gtest helpers. - Wire format: JUnit-with-confirms (XSD-schema-versioned);
roboticks_schema_version = 1.
CLI
- Repo
roboticks-io/roboticks-clipublished aspip install roboticks-cli. Two aliases:rbtk(short) androboticks(clear). - New command groups:
rbtk test,rbtk requirements,rbtk github,rbtk pool,rbtk context,rbtk auth. - GitHub OIDC exchange (
rbtk auth oidc-from-github) for keyless CI auth.
Runner
roboticks-runnerGo binary v2.x.x: ROS2 test execution, container lifecycle, MCAP/JUnit upload via presigned URLs, capability declaration (ROS distros, sim engines, GPU), heartbeat with token rotation.- Air-gapped mode (Enterprise): no GitHub connectivity required.
Pricing
- Four tiers: Free / Team / Enterprise / Sponsored.
- Three metered dimensions only: hosted sim minutes, hot storage, archive storage. Test runs never billed. Self-hosted runner compute always free.
- Standards subscriptions 149/connector/mo.
Documentation
- Top-to-bottom rewrite around the V&V product. Old fleet/device/MQTT/tunnel/capsule/rollout content removed.
- New sections: GitHub App, Requirements, Traceability, Evidence Packs, Standards Coverage, Compliance Patterns.
- Expanded Testing and SDK sections.
Upcoming
- GitLab support (post-MVP; tracking demand).
- Per-region runner pools for low-latency EU customers (deferred).
- SDK formal tool qualification (year 2+; ISO 26262-8 TCL-1 for the assertion layer).
- Custom internal standards on Enterprise.
Earlier releases
Earlier releases were for the legacy robot-fleet product. Those release notes are no longer applicable to the current product; archived for historical reference atlegacy-sidebar.json.