Repository navigation
Conversation
Co-Authored-By: GPT-6 (Codex) <codex@openai.com>
Co-Authored-By: GPT-6 (Codex) <codex@openai.com>
Contributor
WASM Size Report
|
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.
Local tree moves interleaved with deleted-container queries scanned the cache's peak table capacity on every move. Forks also lost the default text style, so marking a previously unused custom key failed with
StyleConfigMissing.Summary and rationale
set_config, including its default. Bothforkandfork_atuse this path. Preserve the publicconfig_text_stylesetter's map-only behavior.time(4n)/time(n) < 8assertion. Add fork regressions for unused keys, explicit/default expansion, independent config copies, historical/detached forks, and the internal Rust API used directly by WASM.loro-crdtpatch changeset per bug and updatecontext/dead-container-cache.md. One commit per bug.Validation
Baseline:
c00c9fa501f8d32f68d6255eacb7035a67fb6ab6(origin/main, loro-crdt 1.16.4). The new scaling test failed before the cache fix (ratio 11.152), and all three fork regressions failed before the style fix withStyleConfigMissing.cargo test -p loro --test dead_container_cache: 11 passed; repeated with--release: 11 passed.cargo test -p loro-internal --lib dead_containers: 1 passed. The cache module's tests are gated bycounter, so also rancargo test -p loro-internal --lib --features counter dead_containers: 8 passed, including all 7 cache unit tests.cargo test -p loro --test fork_text_style: 3 passed; repeated with--release: 3 passed. Release cache tests also passed again after both fixes.CARGO_BUILD_JOBS=4 NEXTEST_TEST_THREADS=4 pnpm test: 1747 passed, 38 skipped; 62 doctests passed. Retried with network access after the clean worktree's dependency installation hit the sandbox's npm connection restriction.CARGO_BUILD_JOBS=4 pnpm check: passed (cargo clippy --all-features -- -Dwarnings, exit 0).rustfmt --edition 2021 --check. The optional repository-widecargo fmt --all -- --checkreports existing formatting differences in unchanged files (loro_js_interop.rs,moon_transcode.rs,shallow_checkout_equal_value.rs,dag.rs, andundo.rs).Release timing
Command:
CARGO_BUILD_JOBS=4 cargo test --release -p loro --test dead_container_cache_perf -- --ignored --nocapture. Same workload before/after; three repeats, alternating 32k/128k order; creation, deletion, and cache priming are outside the timed loop. Other sessions share this machine, so scaling ratios are the primary result.Median scaling ratio: 11.152 before -> 3.939 after. The regression's bound is 8.
Moves-only controls:
Control median scaling: 4.653 before, 3.998 after.