Skip to content

fix #3011 (missing blockfile) when splitting durable sessions#3125

Merged
sawka merged 1 commit intomainfrom
sawka/fix-durable-split
Mar 26, 2026
Merged

fix #3011 (missing blockfile) when splitting durable sessions#3125
sawka merged 1 commit intomainfrom
sawka/fix-durable-split

Conversation

@sawka
Copy link
Member

@sawka sawka commented Mar 26, 2026

No description provided.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 26, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 10b1763d-eff6-4941-a3e3-599bba1b136a

📥 Commits

Reviewing files that changed from the base of the PR and between bff2aa6 and b22392e.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (1)
  • pkg/blockcontroller/durableshellcontroller.go

Walkthrough

The DurableShellController.Start method now creates and initializes a block's terminal file when starting a new durable shell. Prior to starting a new job, the method attempts to create the terminal file using filestore.WFS.MakeFile() with DefaultTermMaxFileSize and circular mode enabled. If file creation fails with an error other than fs.ErrExist, the method returns an error with context. Two imports (io/fs and filestore) were added to support this functionality.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive No description was provided by the author, making it impossible to assess whether the description relates to the changeset. Add a pull request description explaining the issue being fixed, the solution implemented, and why this change addresses the problem.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title directly references issue #3011 and accurately describes the fix for missing blockfile when splitting durable sessions, which matches the code change.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch sawka/fix-durable-split

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

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

@kilo-code-bot
Copy link
Contributor

kilo-code-bot bot commented Mar 26, 2026

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Overview

The fix correctly addresses issue #3011 by ensuring the block's term file is created before starting a new durable shell session. The code:

  • Properly imports required packages (io/fs, filestore)
  • Creates the file with appropriate options (MaxSize, Circular)
  • Handles the "file already exists" case gracefully by ignoring fs.ErrExist
  • Returns an error only for unexpected file creation failures

Files Reviewed (1 file)

  • pkg/blockcontroller/durableshellcontroller.go - No issues

Note: package-lock.json changes are version bump only (0.14.4-beta.0 → 0.14.4-beta.1), which is a generated file and not reviewable.


Reviewed by minimax-m2.5-20260211 · 156,708 tokens

@cloudflare-workers-and-pages
Copy link

Deploying waveterm with  Cloudflare Pages  Cloudflare Pages

Latest commit: b22392e
Status: ✅  Deploy successful!
Preview URL: https://3fe5ffe9.waveterm.pages.dev
Branch Preview URL: https://sawka-fix-durable-split.waveterm.pages.dev

View logs

@sawka sawka merged commit b436aae into main Mar 26, 2026
9 checks passed
@sawka sawka deleted the sawka/fix-durable-split branch March 26, 2026 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant