Comfy-Org / Comfy-Org/comfy-multi-player
Collapse the duplicated rejected-op regression block
- Dominant language
- TypeScript
- Stars
- 5
- Forks
- 1
- Avg merge
- 12h 22m
- Merged PRs (30d)
- 121
Description
At reviewed SHA `811d6a267b34f1eba2ed0969dd24ccdda565371b`, the same rejected-connect fixture, helper, and cases are maintained in two regression files.
- The copied block spans `test/ka4-storable-values.regression.test.ts:27-225` and `test/reject-no-mutation.regression.test.ts:35-238`.
- Keep the distinct oracles: convergence/order coverage in the latter, and cloneable-but-Yjs-unstorable/property coverage later in the former.
- Collapse only the copied block and shared fixture/helper; do not delete either whole suite.
Verification and scope
Exact reviewed locations:
- duplicated helper and basic rejection cases: [`test/ka4-storable-values.regression.test.ts:27-225`](https://github.com/Comfy-Org/comfy-multi-player/blob/811d6a267b34f1eba2ed0969dd24ccdda565371b/test/ka4-storable-values.regression.test.ts#L27-L225)
- corresponding block: [`test/reject-no-mutation.regression.test.ts:35-238`](https://github.com/Comfy-Org/comfy-multi-player/blob/811d6a267b34f1eba2ed0969dd24ccdda565371b/test/reject-no-mutation.regression.test.ts#L35-L238)
- a third comprehensive table overlaps four historical #10 cases but owns all-kind/all-code completeness and abort/retry semantics: [`test/ka4-rejection-byte-identity.test.ts:113-715`](https://github.com/Comfy-Org/comfy-multi-player/blob/811d6a267b34f1eba2ed0969dd24ccdda565371b/test/ka4-rejection-byte-identity.test.ts#L113-L715)
An independent source-semantic pass confirmed the exact duplicated cases and narrowed the recommendation. It also confirmed that the unique later sections of all three suites must remain.
Freshness: open heads #123 (`38e6ec6`), #138 (`ca2a3ec`), #142 (`ba591284`), and #143 (`32c3dcc`) do not modify these test blocks. Existing #149 and #150 concern malformed stamps and contradictory node identity; merged #140 concerns canonical grow ordering. None overlaps this maintenance finding.
Suggested outcome: single-source the shared workflow/helper and one table of the basic rejection cases, while preserving the convergence, exhaustive rejection-code, and generated storability-domain oracles.
Reviewed SHA: `811d6a267b34f1eba2ed0969dd24ccdda565371b`.
Contributor guide
Research direction
Read the duplicated blocks in test/ka4-storable-values.regression.test.ts:27-225 and test/reject-no-mutation.regression.test.ts:35-238, then compare their unique later sections. Run these regression suites, including test/ka4-rejection-byte-identity.test.ts, before changing them. Done means one shared workflow/helper and basic rejection table remain while convergence, storability, exhaustive-code, and abort/retry oracles still pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- testing
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100