Repository navigation
RocketRide Python Client v1.5.0
·
901 commits
to develop
since this release
Added
- docker: releases publish
rocketride-node, an image that runs one pipeline task (engine-base plus a warmed wheel cache), androcketride-engine-base; both cosign-signed, the node image checked before signing and never taggedlatest. - cli:
rocketride profilesubcommand (Python + TS) — profile the server process or a pipeline (#2382) - nodes: add discord — Discord Bot source node over the Gateway; routes messages and image/audio/video/document attachments to the text/image/audio/video/tags lanes and posts the pipeline's first answer back as a reply, channel message, or thread (with thread naming); guild/channel/mention/bot gates, chunked replies (optionally numbered), mention allowlists, text-attachment decoding and attachment merge, and reaction/no_reply/outbound events (#1503)
- nodes: discord support behaviours, each opt-in — thread history as context, escalation pause with a team mention alias (which also limits role pings to the final answer and one per user per hour), acknowledgement and feedback reactions, reply sanitizing with non-answer retries, a pipeline timeout, and startup backfill; engine and provider errors are never posted as answers (on by default), and generic error-shaped openings such as
Error:are suppressed only with reply sanitizing on (#2547) - nodes: discord event capture, opt-in — writes every event the node handles (question, reply, no_reply, reaction) to a PostgreSQL table through a database node connected to the source, deduplicated per event and off the answering path, so a slow or unreachable database never delays a reply;
outbound,no_replyandreactionrows needemitOutbound,emitNoReplyandemitReactionson (#2548) - account:
AccountBase.authorize_db_targetdefault for single-tenant editions (#2614) - ai: let Anthropic cache the unchanging start of an agent's prompt (#2525)
- ai, appdev: show whether an app is actually serving in App Builder (#2580)
- datacore: cloud DB nodes choose org, team or user; task start authorizes every database (#2626)
- log: list every run log of a source in one call (#2583)
- nodes: gate heavy-model tests on hardware (
requiresHardware) (#2314) - nodes: let Claude on Bedrock cache the unchanging start of an agent's prompt (#2569)
- server: c++ node infrastructure (#2423)
- server, nodes: c++ hash node (#2435)
- server, nodes: c++ parse node (#2440)
- server, nodes: c++ indexer node (#2478)
- server, nodes: c++ objstore node (#2489)
- server, nodes: c++ azure node (#2490)
- server, nodes: c++ microsoft nodes (#2491)
- server, nodes: c++ overlay nodes (#2537)
- server, nodes: drop the c++ classify filter (#2481)
- shell: serve the legal and superfans pages as public deep links (#2643)
- tool_github: GitHub App installation-token auth (#2611)
- tool_http_request: config-level auth with pinned whitelist and default headers (#2495) (#2575)
- tools: sync model lists for the vision, GMI Cloud and Nebius nodes (#2317)
- web: compression, cached shell assets and security headers, so the engine needs no CDN (#2419)
Changed
- docker: the engine image is built FROM a shared
engine-baseand runs as uid 1000 (was a system user, uid 999). An existing/opt/datavolume has to be handed over once:docker run --rm -v rocketride-data:/opt/data alpine chown -R 1000:1000 /opt/data. The engine now refuses to start, naming that command, when its data directory is not writable.
Fixed
- ai: the shared embedding factory imports providers from the shipped
nodespackage (#2587). - nodes: PostgreSQL vector stores accept document metadata fields outside the SQL schema and roll back failed chunk replacements, preserving existing documents (#2587).
- account: apply requiredPermissions to the versioned bundle route (#2401) (#2406)
- agent_rocketride: show whole tool results and send instructions once (#2517)
- agent_rocketride: never lose gathered work; record why a run stopped (#2519)
- agent_rocketride: show the model its own calls; add an enforced check tool (#2520)
- agent_rocketride: enforce the tool time limit; keep run state per run (#2521)
- agent_rocketride: check the shape of every plan before acting on it (#2568)
- ai: give the task subprocess an env allowlist instead of a copy of the engine env (#2410)
- ai: hosted engines refuse nosaas nodes and stdio MCP before launch (#2412)
- ai: make engine and task processes non-dumpable on hosted engines (#2414)
- ai: resolve pipeline placeholders from saved secrets only (#2424)
- ai: read JSON replies wrapped in prose; fail fast on an empty JSON reply (#2522)
- ai: keep the task's control token out of agent answers (#2524)
- ai: fail requests waiting on a task data channel when it closes (#2628)
- ai:
close_all()waits for an in-flight sweep before returning (#2638) - ai, nodes: guard AGE 1.5.0 MERGE+SET and empty-list IN gaps (#2514)
- ai, nodes: make the llm connection optional on SQL nodes (#2563)
- ai, nodes: roll back an over-limit graph_neo4j execute and bind params (#2610)
- ai, nodes, client: bind
$paramson the graph execute path (#2515) - appdev: keep failed builds out of the App Builder preview (#2508)
- cli: upload finds files through Windows paths again (#2350)
- client-python: work with opentelemetry-exporter-otlp-proto-http 1.45 (#2426)
- client-python: keep the indentation inside prompt instruction blocks (#2523)
- client-python: run OTEL gRPC-missing tests on any install state (#2622)
- docker: stop counting a failed torch plan as "no torch" (#2653)
- docs: run docs:validate under the engine's Python (#2384)
- nodes: embedding length sorted batching (#2197)
- nodes: give the synced Kimi profiles the endpoint the driver needs (#2451)
- nodes: report a missing GMI Cloud endpoint while the node is configured (#2452)
- nodes: let Bedrock chats run without the transformers package (#2527)
- nodes: count Bedrock cached tokens once with langchain-aws 1.9 (#2651)
- nodes, ai: stop loading and installing torch in nodes that never use it (#2448)
- nodes, ai: let a custom model's output limit be set in its settings (#2528)
- nodex: internal objstore/aws source node (#2666)
- server: report Crashpad dumps at crash time on Linux (#2429)
- server: rocketlib requirements (#2442)
- server: allow one second of clock slack in
file::Timestamps(#2624) - shell: 404 on missing /shell/static/* assets instead of SPA HTML (#2225)
- shell: cap the app bundle browser cache at one hour (#2411)
- shell: end the dev-preview hold and name unresolvable apps (#2460) (#2506)
- task: report a missing cloud database instead of ROCKETRIDE_CLIENT_ID (#2578)
- tools: stamp reasoning for models stored under a prefixed ID (#2447)
- tools: ignore OpenRouter routing variants during discovery (#2480)
- server: claim the GNU C++ runtime at engine startup, so a task that runs
parseand then a node importing torch no longer crashes (#2720) - nodes: langchain-text-splitters 1.1.3, so General Text stops loading torch (#2674)
- agent_rocketride: log the wait for timed-out calls as a warning (#2714)
- ai, nodes: cut remaining ClickHouse echoes, keep other dialects' error text whole, fix ClickHouse session docs (#2713)
- agent: report the stop reason when a run fails early or its answer is refused (#2688)
- ai, nodes: name the missing variable when a key is an unfilled placeholder (#2690)
- pipediff: harden numbers, nesting, and Markdown reports (#2695)