chore: carry the RPC-02 deadline-race test fix and re-pin the template

The synced suite contained an assertion that pinned one of two equally
configured deadlines, so it passed alone and failed in a full parallel
run. Fixed upstream and carried here with the template pin moved to
`a0fbafb`.

Three consecutive runs of the 27-file set that reproduced the failure now
pass at 485 tests.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
DongHyeonka
2026-08-15 12:33:43 +09:00
co-authored by Claude Opus 5
parent 4bff9ca151
commit 93db3c184b
2 changed files with 13 additions and 6 deletions
+2 -2
View File
@@ -2,7 +2,7 @@
"schemaVersion": 1, "schemaVersion": 1,
"template": "clean-architecture-frontend-template", "template": "clean-architecture-frontend-template",
"sourceRepository": "https://git.learn.hyeonworks.com/donghyeon.kang/clean-architecture-frontend-template", "sourceRepository": "https://git.learn.hyeonworks.com/donghyeon.kang/clean-architecture-frontend-template",
"sourceRevision": "8157ad40298da19b43574dbd3b667a64ca3ed822", "sourceRevision": "a0fbafb77b814498fef1be63967921c707f315ac",
"sourceTree": "94d48775a3e67b11dcc68a19ef3c3561792b0ec5", "sourceTree": "b955b062f28ec66bf84f6787ba40971f4e7b528f",
"materialization": "tracked-snapshot" "materialization": "tracked-snapshot"
} }
@@ -645,10 +645,17 @@ describe("RPC-01 only a positive receipt confirms physical closure", () => {
); );
expect(results).toHaveLength(1); expect(results).toHaveLength(1);
expect(results[0]).toMatchObject({ // The subject is that a throwing accessor cannot replace the outcome the
ok: false, // runtime already selected, not which deadline won. `totalDeadlineMs` and
error: { code: "RPC_TOTAL_DEADLINE_EXCEEDED" }, // `idleDeadlineMs` are deliberately equal here, so pinning one of the two
}); // timeout codes would make this assertion a coin flip under load.
expect(results[0]).toMatchObject({ ok: false });
const failure = results[0] as { error: { kind: string; code: string } };
expect(failure.error.kind).toBe("REQUEST_TIMEOUT");
expect([
"RPC_TOTAL_DEADLINE_EXCEEDED",
"RPC_STREAM_IDLE_TIMEOUT",
]).toContain(failure.error.code);
expect(cancels).toHaveLength(1); expect(cancels).toHaveLength(1);
}); });