What metalbear-co/mirrord shipped
Written by FoxPlug from the repository's own releases; not affiliated with Metalbear. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/metalbear-co/mirrord; Metalbear did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Released 3.285.0, adding common.baggage to mirrord-up.yaml,
exclude_tablesin the MySQL and MariaDB branch copy config, and filter handling in split queue entries. Release - Released 3.284.0, adding
db_branchingto mirrord-up.yaml modes so the copy mode for each DB branch can be set. Release - Linux filesystem interception fixes are now enabled by default for OSS. Pull request #5146
- The session monitor can now reach the Firefox browser extension by falling back to window.postMessage, so auto-configure, ping, join and leave work there. Pull request #5189
- Single-cluster sessions are now refused on a management-only multi-cluster Primary. Pull request #5191
- CI integration tests and the arm64 CLI image were sped up, cutting CI time from about 32 to about 13 minutes. Pull request #5174
- The CI runner build cache on Blacksmith sticky disks is now capped in size. Pull request #5202
- AWS smithy crates were updated to drop the unmaintained pin-utils dependency that was failing cargo-deny. Pull request #5203
- Custom modes can now be added to mirrord-up.yaml. Pull request #5127
- Queue entries without a filter are now sent so the operator can apply MirrordSplitConfig filters. Pull request #5114
Why it matters
This week brought two releases with new configuration for mirrord up, including baggage in the common config and DB branching modes, plus a new exclude_tables option for MySQL and MariaDB branch copies. Linux filesystem interception fixes are now on by default for OSS, and the session monitor now works with the Firefox extension. CI time also dropped from about 32 to about 13 minutes, making checks faster on every change.
Changelog entry
- Released 3.285.0 with common.baggage in mirrord-up.yaml,
exclude_tablesfor MySQL and MariaDB branch copies, and filter handling for split queue entries. Release - Released 3.284.0 with
db_branchingfor mirrord-up.yaml modes. Release - Enabled Linux filesystem interception fixes by default for OSS. Pull request #5146
- The session monitor now reaches the Firefox browser extension through window.postMessage, so auto-configure, ping, join and leave work there. Pull request #5189
- Single-cluster sessions are now refused on a management-only multi-cluster Primary. Pull request #5191
- Capped the CI runner build cache on Blacksmith sticky disks. Pull request #5202
- Updated AWS smithy crates to drop the unmaintained pin-utils dependency. Pull request #5203
- Added support for custom modes in mirrord-up.yaml. Pull request #5127
- Filterless split queue entries are now sent so the operator can apply MirrordSplitConfig filters. Pull request #5114
- Sped up CI integration tests and the arm64 CLI image, cutting CI time from about 32 to about 13 minutes. Pull request #5174
- Redis branches without a location are now allowed in the schema. Pull request #5198
- Added baggage to the mirrord up common config. Pull request #5196
This week: mirrord 3.285.0 and 3.284.0. common.baggage and db_branching in mirrord up, exclude_tables for MySQL and MariaDB branch copies, Linux filesystem interception fixes on by default for OSS, Firefox extension reachable from the session monitor, and CI down from ~32 to ~13
This week we shipped mirrord 3.285.0 and 3.284.0. New configuration includes common.baggage in mirrord-up.yaml, db_branching per mode, and exclude_tables for MySQL and MariaDB branch copies. Filterless split queue entries are now sent so the operator can apply MirrordSplitConfig filters. Linux filesystem interception fixes are enabled by default for OSS, and the session monitor now reaches the Firefox browser extension. We also capped the CI runner build cache and cut CI integration time from about 32 to about 13 minutes.
Week of October 26, 2026
What shipped
- Added mirrord preview sync, which previews each service with sync in mirrord-up.yaml using your local code instead of a built image by pushing the sync.files directories into the preview pod, reinstalling dependencies with sync.install when they change, and keeping pushing edits with --watch. Release
- Removed the image field from mirrord-up.yaml services, with mirrord preview up now taking each service's image from --image <service>=<image ref> or MIRRORD_<SERVICE>_IMAGE, and remote Redis branches accept cluster: true to run as a one node Redis Cluster. Release
- Added experimental mirrord up --debug <service>, which holds that service's program before its own code runs until an IDE attaches its debugger and releases it, plus mirrord up list to print every service in an up file as mirrord up would. Release
- Fixed workload targets so selector.matchExpressions is supported instead of only matchLabels, so mixed selectors no longer target unrelated pods and expression-only workloads no longer fail with a missing-label error. Pull request #5157
- Startup kube requests now retry only through
startup_retry, so mirrord no longer stalls for about 14 minutes printing nothing when the cluster answers 503 for the operator. Pull request #5149 - Made the agent's HTTP2 recv header size limit configurable for incoming traffic, addressing the header size exceeded max allowed size 16384 error. Pull request #5169
- Fixed mirrord up so it keeps forwarding a service's output past bytes that are not UTF-8 instead of reporting the service as crashed and dropping the pipe. Pull request #5168
- The working directory's ancestors are now kept local by default. Pull request #5151
- Agents and the CLI now connect to the MetalBear Cloud sessions-manager when nothing else selects one, instead of failing with a sessions-manager URL required error. Pull request #5107
- Paid-feature errors now identify the configuration key and required plan with billing guidance for cluster administrators, and local paid-feature refusals are reported to operators that support license-gate reporting. Release
Why it matters
This week adds a way to run a preview of services with your local synced code instead of a built image, and changes how preview images are configured. It also fixes targeting for workloads that use selector expressions, removes a long silent stall on cluster 503 responses, and makes the agent header limit tunable for people hitting header size errors. Several changes make errors and runtime conditions clearer, including paid-feature diagnostics and a startup log of the libc and kernel on Linux.
Changelog entry
- Added mirrord preview sync to preview services with your local code pushed into the preview pod. Release
- Removed the image field from mirrord-up.yaml services; preview up takes images from --image or MIRRORD_<SERVICE>_IMAGE. Release
- Remote Redis branches accept cluster: true to run as a one node Redis Cluster. Pull request #5115
- Added experimental mirrord up --debug and mirrord up list. Release
- Workload targets now support selector.matchExpressions. Pull request #5157
- Startup kube requests retry only through
startup_retry, removing the silent stall on 503. Pull request #5149 - Made the agent HTTP2 recv header size limit configurable. Pull request #5169
- Mirrord up keeps forwarding service output past bytes that are not UTF-8. Pull request #5168
- Kept the working directory's ancestors local by default. Pull request #5151
- Default serverless sessions-manager connections to MetalBear Cloud when nothing else selects one. Pull request #5107
- Log the runtime glibc, linked glibc and kernel release at startup on Linux. Pull request #5096
This week: mirrord preview sync pushes your local code into preview pods instead of a built image. Workload selector matchExpressions now works, startup kube retries no longer stall about 14 minutes on 503, and the agent HTTP2 header limit is configurable.
This week in mirrord: mirrord preview sync previews each service with sync in mirrord-up.yaml using your local code instead of a built image, pushing the sync.files directories and reinstalling dependencies when they change. The image field is gone from mirrord-up.yaml services; mirrord preview up now takes images from --image or an environment variable, and remote Redis branches can run as a one node Redis Cluster. Workload targets now honor selector.matchExpressions, startup kube requests retry only through startup_retry so a 503 no longer causes a long silent stall, and the agent HTTP2 recv header limit is configurable. mirrord up also keeps forwarding service output past non-UTF-8 bytes.
Week of October 19, 2026
What shipped
- Mirrord preview up now starts a preview environment for every service in a mirrord-up.yaml that has an image, and mirrord preview down deletes every preview environment under a key across all namespaces. Release
- A short-lived child spawned through vfork no longer unsubscribes the parent's live listening-port subscription when it closes an inherited listening socket. Release
- Fixed a socket address buffer overflow where SockAddr::try_from_raw copied the caller's full
address_lengthinto a 128-bytesockaddr_storagewithout checking capacity. Pull request #5140 - A
kube_contextset in the global ~/.mirrord/mirrord.json is now used when a command has no context of its own, including mirrord up, mirrord tui and the operator commands, and the install script verifies downloads. Release - Updated webpki-roots, webpki-root-certs and rustls-webpki to stop trusting the compromised eMudhra intermediate certificate authorities. Release
- New DB branch connection source
aws_ssm_parameterlets apps that read their database URL from AWS SSM Parameter Store at startup use DB branching. Pull request #5102 - Mirrord operator install now installs the operator with the user's organization instead of starting an agent-signup trial. Pull request #5079
- DB branches can run in a namespace per key, and Go programs on Linux arm64 no longer receive syscall results truncated to 32 bits that crashed them on pointers. Release
- Mirrord up now supports DB branching. Pull request #5081
- The session detail view now labels the config key as session key instead of license key. Pull request #5106
Why it matters
This week added preview environments and DB branching to mirrord up, plus an AWS SSM Parameter Store source for branch connections, giving users more ways to run their services and databases against the cluster. It also fixed a vfork listener ownership bug and a socket address buffer overflow, and removed trust in compromised eMudhra certificate authorities.
Changelog entry
- Added mirrord preview up and mirrord preview down for managing preview environments per service and per key. Release
- Fixed a vfork child closing an inherited listening socket unsubscribing the parent's live listening-port subscription. Release
- Fixed a socket address buffer overflow in SockAddr::try_from_raw by checking the destination capacity. Pull request #5140
- Global
kube_contextis now used when a command has no context of its own, including mirrord up, mirrord tui and operator commands; install script verifies downloads. Release - Stopped trusting the compromised eMudhra intermediate certificate authorities in webpki-roots, webpki-root-certs and rustls-webpki. Release
- Added
aws_ssm_parameterDB branch connection source for database URLs read from AWS SSM Parameter Store. Pull request #5102 - Mirrord operator install now installs with the user's organization instead of starting an agent-signup trial. Pull request #5079
- Added per-key namespaces for DB branches and fixed truncated 32-bit syscall results for Go programs on Linux arm64. Release
- Added DB branching support to mirrord up. Pull request #5081
- Renamed the License key label to Session key in the session detail view. Pull request #5106
- Added feature.db_branches[].namespace to run branch pods and their resources in an operator-managed namespace per key. Pull request #5101
- Sessions-manager client now resubscribes after a failed agent data-plane dial. Pull request #5104
This week in mirrord: mirrord preview up and down, DB branching in mirrord up, an AWS SSM Parameter Store source for DB branches, per-key branch namespaces, and a kube_context default. Fixed a vfork listener bug, a socket address overflow, and removed eMudhra CAs from the trust s
This week's mirrord changes: mirrord preview up starts a preview environment for each service in a mirrord-up.yaml that has an image, and mirrord preview down deletes every preview environment under a key across all namespaces. mirrord up now supports DB branching, with a new aws_ssm_parameter source for apps that read their database URL from AWS SSM Parameter Store and a db_branches namespace option to run branches per key. A kube_context in the global config is used when a command sets none. On the fixes side, a short-lived vfork child no longer unsubscribes the parent's listening port, a socket address buffer overflow is fixed, and webpki-roots, webpki-root-certs and rustls-webpki no longer trust the compromised eMudhra certificate authorities.
Week of October 12, 2026
What shipped
- Mirrord preview start and mirrord preview diff accept --chart, --values and --release-name to build preview environments from a Helm chart. Pull request #5084
- Release 3.275.0 adds the preview Helm chart flags and feature.kafka_branch, which points a session's Kafka clients at an isolated broker shared by every session with the same key. Release
- Fixed Go syscall results wider than 32 bits on Linux arm64 being sign-truncated once they pass back through the arm64 hook, which caused faults, with a regression test and an arm64 integration test job. Pull request #5099
- The
aws_secrets_managerandgcp_secret_managerDB branching sources can pick one field out of a JSON secret, so user and password no longer come back as the whole blob. Pull request #5089 - Mirrord no longer patches /usr/bin/security, which stops macOS from prompting for the keychain password in tools that read credentials through it. Pull request #5086
- Cut the Windows CLI's main-thread stack use from 2.6 MiB to 836 KiB in a debug mirrord exec, and stack overflows now print every frame with its size. Pull request #5078
- Mirrord subscribe works without --key, streaming every session with each event naming its
session_key. Pull request #5043 - Agent pings and the process-logging tick no longer restart the intproxy idle timeout, so an intproxy that no layer connects to exits instead of holding its operator session open. Pull request #5063
- DB branch credential requests go to a namespaced route with a 404 fallback to the cluster-scoped one. Pull request #5045
Why it matters
This week added previews built from Helm charts, Kafka branch routing and per-field JSON secret handling, and fixed wrong results and faults for Go on Linux arm64. It also removed macOS keychain prompts from tools that read credentials through security, and cut Windows CLI stack use.
Changelog entry
- Mirrord preview start and mirrord preview diff accept --chart, --values and --release-name to build previews from a Helm chart. Pull request #5084
- Release 3.275.0 includes the preview Helm chart flags and feature.kafka_branch. Release
- Added feature.kafka_branch, served by an operator-run broker for the session key, sent in the connect params, copy target spec and preview queueSplitting.kafkaBranch. Pull request #5080
- DB branching AWS and GCP secret sources can pick one field out of a JSON secret. Pull request #5089
- Fixed truncated Go syscall results wider than 32 bits on Linux arm64, with a regression test and arm64 integration test job. Pull request #5099
- Stopped SIP-patching /usr/bin/security, so macOS no longer prompts for the keychain password in tools that read credentials through it. Pull request #5086
- Windows CLI stack use in a debug mirrord exec dropped from 2.6 MiB to 836 KiB, and stack overflows print every frame with its size. Pull request #5078
- Mirrord subscribe works without --key and streams every session, each event naming its
session_key. Pull request #5043 - Agent traffic no longer resets the intproxy idle timeout, so an intproxy no layer connects to exits. Pull request #5063
- DB branch credential requests go to the namespaced route, with a 404 fallback to the cluster-scoped route. Pull request #5045
- Preview secret mounts and split config lookups use namespaced routes with the same 404 fallback. Pull request #5058
This week in mirrord: previews can be built from a Helm chart, feature.kafka_branch gives sessions an isolated broker, and DB branching can pick a single field out of a JSON secret. Also fixed truncated Go syscall results on Linux arm64 and stopped keychain prompts on macOS.
This week's mirrord changes: mirrord preview start and diff now take --chart, --values and --release-name, so previews can be built from a Helm chart. feature.kafka_branch points a session's Kafka clients at an isolated broker shared by sessions with the same key, and DB branching can now pick one field out of a JSON secret from AWS or GCP Secret Manager. On Linux arm64, Go syscall results wider than 32 bits no longer come back truncated and fault. On macOS, mirrord no longer patches /usr/bin/security, so tools reading credentials through it stop prompting for the keychain password. The Windows CLI also uses less stack.
Week of October 5, 2026
What shipped
- Version 3.272.0 adds local fallback collection and mirrord diagnose sip-report for protected macOS binaries that still require Rosetta, and adds the
explain_config_optiontool to mirrord mcp. Release - Version 3.271.0 adds mirrord preview diff to compare manifest files with the live cluster, mirrord preview start --resource to build previews from your manifest files, and experimental Windows support where the layer is injected with stork and installs its hooks before a launched program reaches its entry point. Release
- Version 3.270.0 adds feature.network.incoming.tls_delivery.client_cert_source; with target, a preview session presents the client certificate already inside the target's container, read by the operator from a running pod, so mutual TLS previews no longer need the certificate. Release
- A major Windows refactor replaces dll-syringe with stork, which adds APC and import-table injection next to the existing load-library method, selectable with --injection-method or MIRRORD_INJECTION_METHOD. Pull request #4910
- Adds mirrord preview start --resource and mirrord preview diff, so previews can be built from your manifest files and compared with the live cluster. Pull request #4952
- A developer can reach a serverless target through the sessions-manager hosted by the mirrord operator, authenticated with their kubeconfig, instead of a standalone sessions-manager's URL and token. Pull request #4954
- The CLI gains mirrord operator uninstall. Pull request #4990
- Mirrord operator install gets a prompt and a --context flag. Pull request #4989
- Bun DNS on macOS now works by intercepting the lower level dnssd library calls, which had an async workflow with no readiness control between Apple's DNS responder and the caller. Pull request #5022
- While a session's queue split waits for the target's patched pods, the CLI polls its own queuesplits entry and shows each pod's reason as progress, warning once after 30 seconds, and multi-cluster sessions combine the rows from every workload cluster. Pull request #5033
Why it matters
This week brings three releases with preview tooling, mutual TLS client certificate handling, Windows injection work, and operator install and uninstall commands. Sessions also get clearer feedback while queue splits wait for patched pods, and several fixes target the layer, agent, and Windows exec behavior.
Changelog entry
- Version 3.272.0: local fallback collection and mirrord diagnose sip-report for protected macOS binaries still requiring Rosetta;
explain_config_optionadded to mirrord mcp. Release - Version 3.271.0: mirrord preview diff, mirrord preview start --resource, and experimental Windows layer injection with stork. Release
- Version 3.270.0: feature.network.incoming.tls_delivery.client_cert_source with target, so a preview session presents the client certificate already inside the target's container. Release
- Windows injection now uses stork, with APC and import-table injection alongside load-library, selectable with --injection-method or MIRRORD_INJECTION_METHOD. Pull request #4910
- Client support for reaching serverless targets through the sessions-manager hosted by the mirrord operator, authenticated with your kubeconfig. Pull request #4954
- Added mirrord operator uninstall. Pull request #4990
- Mirrord operator install gained a prompt and a --context flag. Pull request #4989
- Queue split progress now shows each patched pod's readiness reason, warning once after 30 seconds, combining rows from every workload cluster. Pull request #5033
- Bun DNS on macOS now works by intercepting dnssd calls. Pull request #5022
- Mirrord exec on Windows finishes its progress tree before the user's program runs, so the spinner no longer draws over its output. Pull request #5001
- Fixed relative unlinkat so renaming an opened directory and recreating its old name no longer deletes an entry in the replacement directory. Pull request #5042
- Keyless CI is now allowed on supporting Free operators, preserving the CI-key requirement elsewhere. Pull request #5019
Releases 3.270.0 to 3.272.0 shipped. Preview diff and preview start --resource, previews that reuse the target pod's TLS client certificate, experimental Windows injection with stork, serverless targets over the operator's sessions-manager, plus operator install and uninstall in
This week mirrord shipped releases 3.270.0, 3.271.0 and 3.272.0. Preview gained diff and start --resource so you can build previews from manifest files and compare them with the live cluster. Preview sessions can present the TLS client certificate already inside the target's container. Windows support is experimental: injection now uses stork and installs hooks before a launched program reaches its entry point. Serverless targets can be reached through the operator's sessions-manager using your kubeconfig. The CLI also gained operator install with a prompt and --context, and operator uninstall.
Week of September 28, 2026
What shipped
- Version 3.268.0 released with mirrord mcp, an MCP server over stdio, and mirrord operator install command to deploy the operator from helm charts without additional tools. Release
- Added mirrord operator install command to install the operator from the helm chart. Pull request #4963
- MCP server v0 implemented for integration with external agents. Pull request #4979
- PostgreSQL database branches now support
additional_databasesto copy multiple databases from one source server into a single branch. Pull request #4973 - Mirrord session list command now supports --format json output for programmatic access to session information. Pull request #4968
- Added warning when local application listens on a port that the target container does not declare, informing users about
port_mappingconfiguration. Pull request #4971 - Mirrord up now suggests the closest matching name when users provide unknown configuration fields or values. Pull request #4978
- CLI now displays Kubernetes environment information in error messages to help users debug configuration issues. Pull request #4974
- Fixed
sendfile_detouron macOS to properly reset count when nothing is written, preventing data skipping in files larger than 64KiB. Pull request #4984 - End-to-end consumers now survive broker reconnection after operator restart during mirrord sessions. Pull request #4945
Why it matters
Version 3.268.0 brings operator installation and MCP server support, while database branching gains multi-database support. Bug fixes for macOS file handling and improved error messages make the tool more reliable and user-friendly.
Changelog entry
- Added mirrord mcp, an MCP server over stdio with
validate_configtool for checking configuration against installed schema. Release - Added mirrord operator install command to install operator from helm chart. Release
- Added
additional_databasesto PostgreSQL db branches for copying multiple databases from one source into one branch. Pull request #4973 - Added JSON output format to mirrord session list command. Pull request #4968
- Added warning when local app listens on port different from target container declaration. Pull request #4971
- Improved mirrord up to suggest closest name matches for unknown fields and values. Pull request #4978
- Changed CLI to display Kubernetes environment info in error messages before help section. Pull request #4974
- Fixed
sendfile_detouron macOS resetting count when nothing is written, preventing byte skipping. Pull request #4984 - Improved error messaging by naming the agent port-forward step in Kubernetes and CLI errors. Pull request #4983
- Changed agent to log missing
pidfd_openas warning instead of error. Pull request #4977 - Fixed e2e consumers to survive broker reconnect after operator restart. Pull request #4945
- Changed UI daemon to start only for DB branching and detach from Ctrl+C in mirrord up. Pull request #4980
Mirrord 3.268.0: operator install command, MCP server support, PostgreSQL multi-database branches, improved error messages with Kubernetes info, and macOS sendfile fix.
Mirrord 3.268.0 is out. Simplified operator deployment with mirrord operator install, launched MCP server for external integration, expanded PostgreSQL branching to copy multiple databases, added JSON output to session list, and improved debugging with Kubernetes environment details in error messages.
Week of September 14, 2026
What shipped
- Release 3.262.0 adds --unmatched and --session-key-field flags to mirrord subscribe for reporting unfiltered queue messages and session identifiers, and introduces an Events tab to mirrord ui that lists HTTP and queue messages intercepted across every cluster session. Release
- The Events tab in mirrord ui shows the operator's interception events for every session in the selected context at once, with a compatibility notice for older operators. Pull request #4881
- Mirrord subscribe and mirrord ui now send configured baggage headers with their requests to the operator, allowing them to reach operators behind header filters. Pull request #4883
- PHP Unix socket pathname truncation is fixed by respecting the NUL terminator that socket2 expects, restoring
unix_streamsmatching and remote forwarding. Pull request #4913 - The TLS steal server now verifies certificates against the ServerName from the client's SNI, request URI, or pod IP, resolving verification failures when nginx upstreams send no SNI. Pull request #4900
- Mirrord ui no longer hangs when the selected context's Kubernetes credentials have expired, by bounding both kube client builds and operator reads. Pull request #4882
- Release 3.258.0 adds mirrord config set and mirrord config unset commands for updating user-wide configuration, and adds mirror mode to mirrord up for mirroring traffic and queue messages instead of splitting them. Release
- Release 3.260.0 applies global configuration consistently to every mirrord command while preserving explicit project configuration, environment variables, and CLI flags. Release
- Mirrord now recognizes the macOS arm64e.x1 Mach-O CPU subtype for SIP binaries, falling back to
x86_64instead of extracting unsupported arm64e.x1 slices. Pull request #4892
Why it matters
This week brings improvements to session introspection, configuration management, and compatibility across platforms and container runtimes. The Events tab and subscribe enhancements let users see what traffic the operator is capturing, while fixes to TLS verification, Unix socket handling, and Kubernetes credential timeouts address real deployment scenarios.
Changelog entry
- Added --unmatched and --session-key-field to mirrord subscribe for reporting queue messages with no matching filter and naming the session each event belongs to Release
- Added Events tab to mirrord ui listing HTTP and queue messages the operator intercepted across every cluster session Release
- Events tab shows operator interception events for every session in the selected context with compatibility notice for older operators Pull request #4881
- Fixed PHP Unix socket pathname truncation by respecting NUL terminator required by socket2 Pull request #4913
- Mirrord subscribe and mirrord ui now send configured baggage with requests to the operator Pull request #4883
- Fixed mirrord ui hanging on expired Kubernetes credentials by bounding kube client builds and operator reads Pull request #4882
- TLS steal server now verifies certificates against ServerName from client SNI, request URI, or pod IP Pull request #4900
- Mirrord container now supports Unix sockets by sharing temporary bridge socket with app container Pull request #4903
- Added support for macOS arm64e.x1 Mach-O CPU subtype by recognizing and falling back to
x86_64Pull request #4892
3.262.0 ships: Events tab shows HTTP and queue messages intercepted per session. Subscribe adds --unmatched flag and --session-key-field. UI and subscribe now route with configured baggage for filtered operators.
Mirrord 3.262.0 is out. New Events tab in the UI displays every HTTP and queue message the operator intercepted, per session. The subscribe command adds --unmatched to report messages that no filter matched, and --session-key-field to name which session each event belongs to. Both UI and subscribe now send configured baggage headers with their operator requests, fixing remote operator access behind header filters.