Fix Node 22 github-release test worker serialization failure #352
Labels
No labels
abandoned
active
audit
blocked
data-safety
difficulty:easy
difficulty:hard
difficulty:high
difficulty:medium
docs
done
duplicate
notebook-v0
open
priority:high
ready
release-critical
safe-mode
spec
spec-backlog
subsystem:api
subsystem:backlog
subsystem:bases
subsystem:ci
subsystem:command
subsystem:configuration
subsystem:consolidate
subsystem:dependencies
subsystem:desktop-electron
subsystem:diffmerge
subsystem:docker
subsystem:docs
subsystem:fuzzy
subsystem:graph
subsystem:hotkeys
subsystem:lapis
subsystem:maint
subsystem:maintenance
subsystem:markdown
subsystem:markdown-lint
subsystem:md018
subsystem:notebook
subsystem:notifications
subsystem:opfs
subsystem:package
subsystem:plugin-markdown
subsystem:plugin-tasks
subsystem:plugins
subsystem:registry
subsystem:release
subsystem:renovate
subsystem:restore
subsystem:scripts
subsystem:search
subsystem:settings
subsystem:spec
subsystem:tasks
subsystem:testing
subsystem:ui
subsystem:web
subsystem:workspace
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lapis-notes/lapis#352
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Forgejo
checks.ymlfails in the repo script test suite atscripts/github-release.test.mjswith Node 22 reporting:Unable to deserialize cloned data due to invalid or unsupported version.Local Node 24 runs pass, which points to a Node-version-sensitive incompatibility
in the GitHub release upload path or its test doubles.
Problem
The GitHub release helper and/or its tests appear to depend on behavior that is
safe in Node 24 but breaks under the Node 22 runtime used by the CI container.
The likely fault line is file-backed
Blobhandling during asset upload.Goal
Make the GitHub release helper and its script tests pass reliably under the CI
Node 22 runtime without regressing the documented GitHub releases mirror flow.
Scope
scripts/github-release.mjsscripts/github-release.test.mjstest:scriptsNon-goals
Acceptance Criteria
scripts/github-release.test.mjspasses under Node 22 in isolation.pnpm test:scriptspasses in the local repo environment after the fix.worker serialization while preserving GitHub asset upload behavior.
validation expectations changed.
Implementation Notes
workflow-specific suppression.
Suggested Files or Specs To Inspect
scripts/github-release.mjsscripts/github-release.test.mjsspec/src/80-maintenance/release-management.mdspec/src/80-maintenance/monorepo-scripts.md.forgejo/workflows/checks.ymlValidation Commands
npx -y node@22 --test --test-concurrency=1 scripts/github-release.test.mjspnpm test:scriptspnpm check:allRelated Issues
Follow-up Tasks
Implementation Summary
Replaced the Blob-based GitHub upload unit-test body with Uint8Array so Node 22 combined node --test runs no longer hit worker deserialization failures; revalidated scripts and repo tests.