Repository navigation
Releases: 4alvit/mcp-venus-os
Release list
v0.2.13-rc.1
Changes in 0.2.13
Maintenance
- Require bounded fuzzing on public release candidates, with source-bound reports and retained diagnostics; beta and ordinary CI do not run mutation campaigns.
- Reject numeric hardware-contract and write values that exceed the finite hardware range.
Upgrade
Use the documented update procedure and retain local configuration. Automated tests do not establish target-device acceptance.
Security
Release qualification now requires isolated fuzzing against the candidate source. Report findings through SECURITY.md.
Build provenance
rc candidate with a version fixed before compilation.
Source: 12babf20d1bab5e29aff80fea0ab2b19b096732b
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38496562129
See release-manifest.json for package hashes and version input evidence.
v0.2.13-beta.1
Changes in 0.2.13
Maintenance
- Require bounded fuzzing on public release candidates, with source-bound reports and retained diagnostics; beta and ordinary CI do not run mutation campaigns.
- Reject numeric hardware-contract and write values that exceed the finite hardware range.
Upgrade
Use the documented update procedure and retain local configuration. Automated tests do not establish target-device acceptance.
Security
Release qualification now requires isolated fuzzing against the candidate source. Report findings through SECURITY.md.
Build provenance
beta candidate with a version fixed before compilation.
Source: 12babf20d1bab5e29aff80fea0ab2b19b096732b
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38495490826
See release-manifest.json for package hashes and version input evidence.
v0.2.12
Changes in 0.2.12
Changed
- Make the full multi-platform runnable OCI archive repeatable for the same
reviewed source and frozen plan. Preserve the original build attestations in
a separate required provenance file, including their truthful per-run dates.
Security
-
Verify captured signature-control bytes consistently and reject nonregular
files and aliases. Release verification binds the required OCI/provenance pair
to the signed inventory, reviewed source, frozen plan and both platforms. -
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
For new container candidates, retain both mcp-venus-os-container.oci.tar and
mcp-venus-os-container.provenance.json with the full release asset set. Follow
docs/release-signatures.md using the reviewed verifier; the sidecar is required
for provenance verification. The packaging change requires a new RC after RC1
and the normal release acceptance before stable promotion.
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
Final build from accepted v0.2.12-rc.2; new verified package bytes.
Source: a62cd87d68dc15f3650989781178d7d0460d1760
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38342648208
See release-manifest.json for package hashes and version input evidence.
v0.2.12-rc.2
Changes in 0.2.12
Changed
- Make the full multi-platform runnable OCI archive repeatable for the same
reviewed source and frozen plan. Preserve the original build attestations in
a separate required provenance file, including their truthful per-run dates.
Security
-
Verify captured signature-control bytes consistently and reject nonregular
files and aliases. Release verification binds the required OCI/provenance pair
to the signed inventory, reviewed source, frozen plan and both platforms. -
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
For new container candidates, retain both mcp-venus-os-container.oci.tar and
mcp-venus-os-container.provenance.json with the full release asset set. Follow
docs/release-signatures.md using the reviewed verifier; the sidecar is required
for provenance verification. The packaging change requires a new RC after RC1
and the normal release acceptance before stable promotion.
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
rc candidate with a version fixed before compilation.
Source: a62cd87d68dc15f3650989781178d7d0460d1760
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38338857590
See release-manifest.json for package hashes and version input evidence.
v0.2.12-rc.1
Changes in 0.2.12
Security
-
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
rc candidate with a version fixed before compilation.
Source: ab26fe6e4bc0c4f72b1453fbf9caadad836a049a
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38335719203
See release-manifest.json for package hashes and version input evidence.
v0.2.12-nightly.20261013121522.38395742064.1
Changes in 0.2.12
Changed
- Make the full multi-platform runnable OCI archive repeatable for the same
reviewed source and frozen plan. Preserve the original build attestations in
a separate required provenance file, including their truthful per-run dates.
Security
-
Verify captured signature-control bytes consistently and reject nonregular
files and aliases. Release verification binds the required OCI/provenance pair
to the signed inventory, reviewed source, frozen plan and both platforms. -
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
For new container candidates, retain both mcp-venus-os-container.oci.tar and
mcp-venus-os-container.provenance.json with the full release asset set. Follow
docs/release-signatures.md using the reviewed verifier; the sidecar is required
for provenance verification. The packaging change requires a new RC after RC1
and the normal release acceptance before stable promotion.
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
nightly candidate with a version fixed before compilation.
Source: ede49d2d8182948c2cc9e04e8ef23fc8acf25b03
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38395742064
See release-manifest.json for package hashes and version input evidence.
v0.2.12-beta.14
Changes in 0.2.12
Changed
- Make the full multi-platform runnable OCI archive repeatable for the same
reviewed source and frozen plan. Preserve the original build attestations in
a separate required provenance file, including their truthful per-run dates.
Security
-
Verify captured signature-control bytes consistently and reject nonregular
files and aliases. Release verification binds the required OCI/provenance pair
to the signed inventory, reviewed source, frozen plan and both platforms. -
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
For new container candidates, retain both mcp-venus-os-container.oci.tar and
mcp-venus-os-container.provenance.json with the full release asset set. Follow
docs/release-signatures.md using the reviewed verifier; the sidecar is required
for provenance verification. The packaging change requires a new RC after RC1
and the normal release acceptance before stable promotion.
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
beta candidate with a version fixed before compilation.
Source: a62cd87d68dc15f3650989781178d7d0460d1760
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38338823667
See release-manifest.json for package hashes and version input evidence.
v0.2.12-beta.13
Changes in 0.2.12
Security
-
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
beta candidate with a version fixed before compilation.
Source: 5fc93b135ef419eb60a44f485d4f55ab5e044768
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38335842335
See release-manifest.json for package hashes and version input evidence.
v0.2.12-beta.12
Changes in 0.2.12
Security
-
Reject boolean, non-finite and nonnumeric readbacks when confirming numeric
hardware writes; a freshtrueecho no longer confirms a requested mode1.
Finite numeric strings remain compatible with device telemetry. -
Close TLS sockets when native certificate verification or handshake fails,
while preserving nonblocking read/write retries. Strict warning tests now
catch leaked sockets before publication.
Reject non-finite numbers and booleans before current-limit comparisons. Reject
invalid or reversed configured safety bounds at startup and require an integer
SoC limit. Validation logs record the operation name without its argument values,
so SSH command arguments are no longer copied into the validation log.
MQTT TLS now rejects undersized keys in the entire verified broker chain before
sending CONNECT or credentials, including RSA 2047-bit trust anchors. Normal CA
and hostname verification and the existing MQTT lifecycle remain active.
Enforce the key-strength policy on both SSH server host keys and the explicitly
selected client private key. RSA keys below 2048 bits and unsupported keys fail
closed. Trusted host matching, revocations and key verification during rekeying
remain active. Only explicit raw-key/password authentication is used; implicit
agents, default identities, hardware tokens, GSS/host-based authentication and
SSH/X.509 certificates cannot bypass the policy.
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
Keep current limits finite and non-negative, and keep SoC bounds within 0–100
with the minimum no greater than the maximum. Existing normal numeric environment
values remain supported. Remove secrets from old log archives according to the
operator's retention policy and rotate a credential if it appeared in a command
argument that was logged. This change does not modify device configuration.
For MQTT_TLS=true, replace broker or CA keys below the documented minimum before
upgrading. Use supported CPython 3.11+ with the existing cryptography dependency;
unsupported verified-chain APIs fail closed. No device or trust-store settings
are changed automatically.
Replace weak SSH keys before upgrading, verifying new host fingerprints through
an independently trusted channel. Configure SSH_KEY_PATH and
SSH_KNOWN_HOSTS explicitly if an installation previously relied on ambient
AsyncSSH identity/trust configuration. Ordinary RSA-2048+, NIST P-256+, Ed25519
and Ed448 keys remain supported. Alternatively leave both SSH credential
variables unset to keep SSH management tools disabled. No device, credential or
trust-store change is performed automatically. The security documentation also
describes the verified Python and release-helper TLS profiles.
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Changed
Release candidates use a frozen version plan for wheel, source package, runtime
version and container labels. Stable publication validates a new final build
against an accepted RC from the same source. Signed inventories bind all release
payloads to the reviewed source and publisher identity. Historical unsigned
releases remain unsigned; signing configuration alone does not award a badge.
Expanded tests measure all Python production modules, including operational
scripts. Governance, contributor conduct, a one-year roadmap and security
assurance are documented. Access continuity remains explicitly unresolved.
Build provenance
beta candidate with a version fixed before compilation.
Source: ab26fe6e4bc0c4f72b1453fbf9caadad836a049a
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38335064590
See release-manifest.json for package hashes and version input evidence.
v0.2.12-beta.9
Changes in 0.2.12
Security
SSH management verifies the remote host key instead of accepting any key.
Unknown or changed hosts fail closed. An optional SSH_KNOWN_HOSTS file allows
an explicit trust store; otherwise standard AsyncSSH known-host files apply.
SSH negotiation also excludes SHA-1 signatures/MACs and non-ephemeral key
exchange. Algorithm selection keeps the trusted known_hosts preference order,
so a server offering several keys can still use its trusted RSA/SHA-2 key.
Update obsolete SSH server software instead of disabling verification.
Upgrade
Before using SSH tools, independently verify the Cerbo host-key fingerprint
and install its trusted record. Compose installations must provide
keys/known_hosts, mounted read-only with the existing key directory. Existing
installations without a trusted record will refuse SSH access until configured.
After a firmware reflash verify the new key independently before updating it;
there is no verification-disable switch. No hardware access, deployment or
trust-store modification is performed automatically by this release.
The release also adds contributor instructions and a source-linked OpenSSF
assessment, without claiming a badge before the assessment is completed.
Build provenance
beta candidate from 8dd145e1a3fbca47fdf3638184a681784811cebe.
Validation: https://github.com/4alvit/mcp-venus-os/actions/runs/38307864230
See release-manifest.json for checksums and immutable Actions evidence provenance.