Repository navigation
Conversation
Collaborator
Integration test reportCommit: bd058b1
Top 6 slowest tests (at least 2 minutes):
|
denik
force-pushed
the
denis/dms-testserver-workspace-files
branch
from
October 16, 2026 09:32
d6581f8 to
bd058b1
Compare
denik
marked this pull request as ready for review
October 16, 2026 13:09
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Keep ordinary workspace file content in testserver while routing DMS, workspace hierarchy, and permissions to LITE. Mirror successful directory creation and deletion so both stores stay consistent. Deployment nodes still come from real DMS.
Why
Forwarding ordinary file content through LITE adds avoidable work to local CLI/DMS acceptance tests. This comparison changes only the CLI routing adapter; Universe stays unoptimized, and DMS still runs its real handlers and MySQL-backed EntityStore.
Fresh measurements on the same Linux amd64 Arclet (8 visible CPUs), Go 1.27.2, fixture JDK 17:
These are leaf test durations, not single CLI calls or whole-command/build times. Job tests were each run first against a newly launched fixture, followed by seven warm DMS-on or three warm DMS-off runs. The dedicated DMS fixture was run later on each already-warm service; its first iteration is not a cold-service measurement. Fixture bootstrap and Go/Bazel builds are excluded.
All warm samples, seconds:
17.02, 15.37, 15.87, 15.09, 14.74, 14.06, 14.83; PR:8.43, 7.67, 8.38, 7.24, 7.22, 8.05, 6.77.12.87, 13.26, 12.21; PR:4.70, 4.55, 4.19.13.89, then12.66, 12.71, 13.10; PR: first7.05, then7.23, 7.52, 6.69.Warm improvements: 49.7% for the DMS-on job, 64.9% for the DMS-off job, and 44.3% for dedicated DMS no-drift. Warm sample standard deviations, main → PR:
0.949s → 0.635s,0.531s → 0.262s, and0.241s → 0.421s, respectively. Every timed repetition passed.CLI baseline c2f4faa1ddd4, PR bd058b1eabb8. Both use unchanged Universe main snapshot 16791bc6f5b6. Neither includes the filename-configuration, ACL-client, home-grant, or other experimental performance patches.
Exact setup: keep the CLI checkout anywhere inside Universe for settings-file discovery. From Universe, build once, before sampling:
Launch the same built fixture on a terminal for each side and wait for Ammonite's
@prompt:This writes
bundle/metadata-service/test/.lite/cli-endpoints.json, discovered by the CLI. Both sides use terminal launch to exclude the separately fixed launcher EOF loop. Stop withexitand wait for container teardown before restarting.From the CLI root, check out each CLI revision above and run the DMS-on job command against a fresh fixture:
Then, on the already-warm fixture:
Restart the fixture separately for the DMS-off job comparison:
The DMS-off segment must be
DMS=$:DMS=also selectsDMS=true. An initial mixed batch was discarded and retained only as invalid raw evidence. The main DMS-on and dedicated-fixture commands initially omitted-parallel=1, but selected exactly one leaf per iteration; no sibling tests ran concurrently.Raw samples and setup notes are experimental, unreviewed evidence. The older 55.57s result was not reproduced and is not used in this comparison.
Tests
All 32 timed repetitions passed against real LITE services: 16 DMS-on jobs, 8 DMS-off jobs, and 8 dedicated DMS no-drift fixtures. The broader real-DMS selection passed 20/22 fixture directories. Both failing directories were rerun on unchanged CLI main and fail there too:
immutable-foldersends an unsupportedinternal_immutable_snapshotsresource prefix to DMS;version-never-createdexpects a testserver-injected error that real DMS does not return. No expected outputs or assertions were changed../task fmt,./task checks, and./task lintpassed with Go 1.27.2../task testcompleted successfully: 12,159 root-module tests (131 skipped), 73 tools tests, and 4,304 acceptance tests (5 skipped). The acceptance runner retried oneupload-504/DMS=trueoutput-order mismatch, which passed on retry. These ordinary repository tests ran without a discoverable LITE settings file, using pure testserver; real-DMS coverage is reported separately above.This PR was written with Codex.