Skip to content

Benchmark mailbox latency, overload, and typed-service isolation #4635

Open

Description

@auser

Agent pickup triage

Category: blocked. This classifies the next task, not completion or a verified current-source pass.

Next bounded step: Wait for the implemented mailbox paths required by each matrix cell; prepare the reproducible measurement plan now, but report harness and real-VM evidence separately.

Read the linked handoff and coordinate any active owner before implementation. Preserve the original acceptance criteria below; this triage grants no spending, credentials, publication, host reconfiguration, or landing authority.


Parent: #4622

Related to #4626, which measures current egress and shared-vsock saturation. This issue measures the mailbox path and reuses its host-resource instrumentation where applicable.

Outcome

Produce reproducible evidence that mailbox calls and casts remain bounded, fair, isolated from other typed services, and within the declared warm-path latency target under realistic concurrency and failures.

Matrix

  • Local process, same host, direct same-region, customer relay, and explicitly configured public relay.
  • 1, 10, 100, 250, 500, and 1,000 workload identities.
  • Calls, casts, mixed calls/casts, full mailboxes, slow consumers, reconnects, partitions, and one abusive sender at its admitted limit.
  • Ephemeral acknowledgement, durable acceptance, snapshot/replay, and migration cutover where implemented.
  • Mixed mailbox, telemetry, FlowMux egress, and machine-control traffic.

Acceptance criteria

  • Machine-readable results report p50, p95, and p99 send-to-acceptance and call-response latency, throughput, goodput, retries, duplicates, refusals, and timeouts.
  • The warm, online, direct same-region path meets the Program: signed pass-by-value mailboxes for workload, host, and user messaging #4622 p95 target below 300 ms or Program: signed pass-by-value mailboxes for workload, host, and user messaging #4622 is updated with the measured limiting resource and an evidence-backed replacement contract.
  • Queue depth, credit stalls, CPU, memory, descriptors, network path, fairness, and per-service latency identify the first saturation point.
  • Saturating mailboxes cannot starve machine control, telemetry, or FlowMux beyond their declared bounds.
  • Direct and relayed results, durable acknowledgement costs, and real-microVM versus harness results are reported separately.
  • No artifact contains credentials, payload plaintext, or customer data.

Activity

  1. added
    enhancementNew feature or request
    mailboxesSigned pass-by-value mailbox program
    mailbox-phase-4Mailbox conformance and performance evidence
    on Oct 22, 2026
  2. auser commented on Nov 11, 2026

    @auser
    CollaboratorAuthor

    Capacity gate remains open. A local, unpublished density-harness draft now records HVF/Firecracker helper process/thread/RSS and VM-state storage observations plus p50/p95/p99 machine-start receipt publication latency. That timestamp is not guest readiness or mailbox acceptance. The durable-mailbox owner confirms no public end-to-end accepted_durable receipt probe or stable-ID guest fixture exists yet; legacy machine mailbox recv and an outbox file write must not be used as substitutes. No live Linux/KVM run or 600–1,000-running-VM witness has been performed here; a suitably provisioned host and explicit authorization are needed for that load. Keep the real-VM and first-durable-message acceptance boxes unchecked. Related #5292 proposes a pooled-key resident daemon, while the local isolation-preserving notification design keeps VM-scoped keys; reconcile that trust-boundary choice before implementing a density optimization.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestmailbox-phase-4Mailbox conformance and performance evidencemailboxesSigned pass-by-value mailbox program

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions