Skip to content

[claude] Give each LcmCrdt test fixture its own media cache folder - #2794

Merged
myieye merged 2 commits into
developfrom
claude/per-fixture-media-cache
Oct 26, 2026
Merged

myieye merged 2 commits into
developfrom
claude/per-fixture-media-cache

Conversation

@myieye

@myieye myieye commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

[Claude, autonomous]

Each LcmCrdt test fixture gets its own ProjectPath (and so its own media cache folder), deleted on dispose. Before, fixtures shared and deleted one media folder per project code, so parallel tests could delete each other's files mid-save (flaked PictureTests on #2757).

  • MediaTestsBase now asserts ErrorMessage before Result, so a failed save shows the exception in CI instead of just Error.

🤖 Generated with Claude Code

Fixtures shared <cache>/<project code> and deleted it on dispose, so a
parallel fixture could delete the folder while another was saving a file.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added the 🔩 FW Lite Core Shared MiniLcm, CRDT and sync libraries that ship in both FW Lite and FwHeadless label Oct 23, 2026
@coderabbitai

coderabbitai Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: df4e08cf-8caf-4a5c-940e-ed8cf7142bb7
📥 Commits

Reviewing files that changed from the base of the PR and between 2097078 and c07bcc3.

📒 Files selected for processing: 1
  • backend/FwLite/LcmCrdt.Tests/MiniLcmApiFixture.cs

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

Walkthrough

The fixture now appends a GUID-named subdirectory to HarmonyConfig.LocalResourceCachePath. During disposal, it recursively deletes that directory if it exists. The fixture no longer imports LcmCrdt.MediaServer.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Bug fix

Suggested labels: 🔩 FW Lite Core

Suggested reviewers: hahn-kev

Merge Risk: ⚪ Minimal · up to c07bc

Each test fixture now isolates and cleans up its own media cache, avoiding cross-test deletion.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly identifies the main change: assigning each LcmCrdt test fixture its own media cache folder.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Description check Passed The description states that each LcmCrdt test fixture now gets its own ProjectPath and media cache folder, deleted on dispose, to stop parallel tests from deleting each other's media files. It also no…
Full details: Description check

Explanation

The description states that each LcmCrdt test fixture now gets its own ProjectPath and media cache folder, deleted on dispose, to stop parallel tests from deleting each other's media files. It also notes a change to MediaTestsBase so ErrorMessage is asserted before Result. Both points match the raw summary of MiniLcmApiFixture changes and the objectives of PR #2794. The description is specific and on-topic, so it passes.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

A rabbit hops beside the cache,
A fresh new folder greets the day.
When tests are done, it clears the trail,
Then tucks its little paws away.
The burrow’s neat for next-time play.

Comment @coderabbitai help to get the list of available commands.

@argos-ci

argos-ci Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Oct 23, 2026, 1:37 PM
e2e (Inspect) ✅ No changes detected - Oct 23, 2026, 1:44 PM

Configure<LcmCrdtConfig> runs before the kernel's PostConfigure, so the
folder no longer depends on registration order. Delete it after disposing
services, drop MediaTests' now-redundant project code, and assert
ErrorMessage before Result so a failed save shows the exception in CI.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@myieye
myieye merged commit b636663 into develop Oct 26, 2026
25 checks passed
@myieye
myieye deleted the claude/per-fixture-media-cache branch October 26, 2026 09:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔩 FW Lite Core Shared MiniLcm, CRDT and sync libraries that ship in both FW Lite and FwHeadless

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants