compare_commands.mjs | Runloop devbox.cmd.exec() versus Freestyle vm.exec() | Success, nonzero exit, stdout/stderr, Unicode, binary and large transfers; check bytes, modes, ownership, and symlinks. Extend beyond the starter’s small fixtures. |
compare_sessions.mjs | Runloop named shells versus Freestyle PTY or explicit command context | Directory and environment continuity, concurrent command ordering, cancellation, reconnect, background work, and output framing. Independent command calls are not a persistent shell. |
compare_lifecycle.mjs | Runloop suspend/resume versus Freestyle pause/start and stopped boot | Disk persistence on both; process restart on Runloop and process survival on Freestyle. Check idle policy, deletion deadlines, ephemeral behavior, and unexpected termination. |
compare_network.mjs | Runloop egress policy and tunnels versus Freestyle firewall, TLS routes, and forward auth | Allowed and blocked outbound destinations, authorized and anonymous inbound requests, authorizer failure, tenant separation, and wake-up behavior. The starter tests outbound traffic only. |
compare_environment.mjs | Runloop blueprint versus configured Freestyle snapshot | Dependencies, architecture, effective user, paths, permissions, startup, kernel-dependent tools, and absence of runtime secrets from disk and saved memory. |
compare_snapshot.mjs | Runloop disk snapshot versus Freestyle memory-and-disk snapshot | Manifests and database integrity after source termination; process behavior, external data, snapshot retention, capture failure, and recovery within objectives. The starter compares native snapshots, not cross-provider disk import. |
compare_axon.mjs | Runloop event/SQL/Broker APIs versus your journal, database, and workers | Ordered replay, subscriber cursors, concurrent turns, cancellation, retry deduplication, crash recovery, SQL constraints, and atomic failed batches. A missing target component fails acceptance. |
compare_evaluations.mjs | Legacy results versus Harbor or your chosen harness | Fixed passing/failing/timeout cases, per-scorer values, weights, aggregate, error classification, and artifact retention. Confirm a working Freestyle adapter first. |