Repository navigation
Conversation
Expose the existing native malloc/free alongside ModuleMem for bounded resource fixtures. Prefill the real signing heap, then retain the original real key-allocation abort, recovery, signature and E2EE-isolation assertions. Keep the 6000-signature and 1800-decryption stress loops unchanged. Add allocation isolation, exhaustion and coalescing/reuse tests; generated crypto and default runtime behavior are unchanged.
Use synctest quiescence to check the album-preview worker limit without scheduler-dependent sleeping. Keep ordering and concurrency assertions and bounded failure guards. Write crypto vectors to t.TempDir with mandatory write checks and test-scoped logging, enabling safe parallel execution of the two independent vector tests.
…urements Provide fast changed-package feedback, full normal/race/coverage and release modes with uncached test execution. Enforce measured package coverage fractions and covered-statement counts for both all and non-generated code. Add seven coverage-gate tests and a serial Linux benchmark driver with isolated build caches, JSON timing, resource sampling and source-identity checks. Keep raw artifacts project-local and ignored.
Add mandatory normal/coverage and race jobs with bounded parallelism, package coverage gates and retained test artifacts. Pin/cache lint tools and static analysis, separate module and instrumentation-mode build caches, cancel stale PR runs and avoid duplicate feature-branch push runs. Keep existing lint/build check names, validate fork Docker builds without registry secrets, use GHA layer cache and gate deployment on both test modes.
Document independent cold/warm baselines, CPU and memory measurements, profiling and per-package coverage. Record 89% uncached execution improvements, unchanged cold normal bottleneck, zero lost covered blocks, repeated shuffled stability, validation commands and required CI check additions. Preserve PR beeper#271 and original release artifacts.
Apply the measured all-code and handwritten coverage floors to the aggregate as well as existing packages. Add a regression proving an uncovered new package cannot pass by leaving older package percentages unchanged. Validate both measured and release profiles against the stronger gate.
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.
Summary
Optimize the Beeper LINE test suite while preserving regression scenarios and strengthening CI validation.
Depends on beeper#271. This is a fork-local stacked PR against the actual branch backing beeper#271,
meramsey/line:integration/linux-build-20261020, at587164f7ced99bc5765ac7df4eafc11314e6d602. That branch is not available as an upstream base, so targeting upstreammainnow would unnecessarily repeat beeper#271's application fixes.This diff contains only the six optimization commits ending at
a7b5764a6a4c0d45d10814fd101c21eca70199b9. PR beeper#271's published branch/history is unchanged.Performance
These are local measurements, not GitHub Actions timings. Both revisions used Go 1.26.10, CGO/libolm,
GOMAXPROCS=4, bounded package parallelism-p 2, and explicit test counts that disable cached test results. Cold-cache measurements use a fresh Go build cache with module downloads already cached.Warm-suite CPU consumption fell 83.08% normally and 86.38% under race instrumentation. Peak memory is approximately unchanged. Large generated-code compilation remains the cold-cache bottleneck; no substantial RAM reduction or cold-normal speedup is claimed.
Improvements
testing/synctestquiescence, preserving concurrency and ordering assertions.t.TempDir()and safely parallelize the two independent vector tests. Tests that mutate globals, environment or stdout remain sequential.scripts/test.sh.Validation
Test counts include parent tests and subtests. No regression scenario was removed, no package was excluded from race testing, and the existing skip was not expanded. Full test executions use uncached results; build caches are used only for compilation.
CI and repository configuration
Existing check names
Lint with 1.26,Build 1.26andbuild-dockerremain. When adopting the workflow, add Test (normal) and Test (race) to required branch-protection checks. Deployment also depends on both modes. Repository protection settings have not been changed.The historical upstream workflow did not run Go tests, race detection or coverage, so its duration is not an equivalent full-validation comparison. GitHub Actions performance improvements are not claimed as measured; the timing table above is from controlled local runs. Current GitHub check status should be read from this PR's checks.
Dependency and merge order
main, verify ancestry before proposing the optimization upstream. If the original parent history is retained, this branch can be used directly. If fix: resolve LINE IDs and harden sends, QR login, and media beeper/line#271 is squash-merged or rebased, create a new landing branch from updated upstreammainand apply only these six optimization commits, preserving attribution and the existing published branches. GitHub cannot retarget a fork-local PR into another base repository.Neither PR is merged automatically. The local development branch may advance for subsequent fixes, but the remote branch backing beeper#271 remains pinned to its published head.
Documentation and continued development
See docs/TEST_PERFORMANCE.md for profiling evidence, complete before/after tables, coverage invariants, stability results, cache limitations and reproducible commands.
TEST_RUN='TestResolveIdentifier' bash scripts/test.sh fast ./pkg/connector bash scripts/test.sh normal bash scripts/test.sh race bash scripts/test.sh coverage bash scripts/test.sh releaseUse targeted/fast checks during implementation, full normal validation for significant changes, race validation for concurrency-sensitive changes, and the complete release workflow before publishing a release. Raw benchmark output, caches, binaries and local release artifacts are intentionally excluded from the PR.