[PR #6978] [MERGED] fix(build): prepare release dependency types during installation #7489

Closed
opened 2026-11-01 21:48:11 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/6978
Author: @gensokyo-dev
Created: 10/24/2026
Status: ✅ Merged
Merged: 10/24/2026
Merged by: @gensokyo-dev

Base: main ← Head: fix/release-patch-bootstrap-20261024


📝 Commits (1)

  • d3044a2 fix(build): prepare release dependency types during installation

📊 Changes

1 file changed (+14 additions, -3 deletions)

View changed files

📝 scripts/prepare.mjs (+14 -3)

📄 Description

Problem and outcome

A clean install at main e3a6ce40f fails type checking: releaseProposal.test.ts passes includeFiles, but upstream CommitIteratorOptions does not declare it. The repository's exact release-please patch already contains both the runtime change and its declaration; it was applied only inside the release command or test beforeAll. A typecheck before those commands therefore reads different dependency types.

Apply that same idempotent, version-checked patch during source development installation, independently of HUSKY=0. Reuse the dependency-availability guard for Husky. Published installs without source, and source installs omitting development dependencies, skip it. This changes no dependency versions and keeps one patch owner; no casts, duplicate interface or checker exceptions. No separate issue was opened for this direct main-CI repair.

Executed validation

Pinned Node 24.22.1 / npm 11.16.0, Linux x64, two CPUs; checks below executed on e3a6ce40f plus this diff:

  • Fresh baseline npm ci then npm run typecheck: reproduced TS2353 at line 378 (8.28 s wall / 16.12 s CPU / 1114.1 MiB sampled process-family RSS).
  • Fresh fixed HUSKY=0 npm ci: passed; two further HUSKY=0 node scripts/prepare.mjs executions passed. The installed declaration contains includeFiles before any test runs.
  • Complete releaseProposal and releaseWorkflow files: 69 passed, including exact patch idempotence, mismatched versions, partial patches and release history/attribution behavior (4.90 s wall / 6.75 s CPU / 622.6 MiB).
  • Isolated real prepare processes with no source and with source but no development dependencies: both exited 0 with empty output, without a release helper present.
  • Final npm run check and git diff --check: passed (56.10 s wall / 99.56 s CPU / 2564.6 MiB). An earlier formatting-only failure was corrected before this final check.

Tests used warm runtime artifacts and fresh fixture processes. RSS sums descendants at 100 ms intervals; shared pages may double-count and short-lived/reparented children may be missed. Runs had elapsed guards and an 8 GiB sampled stop. No OOM or speedup claim; agent tokens were not measured. The branch was subsequently rebased onto latest main d9660eb03, which adds unrelated verifier/cleanup changes; CI verifies that integrated head. The independently observed source-worker exit and resource-boundary failure remain under separate investigation and are not claimed fixed by this installation change.

CI and review

CI 40080406965 completed on d3044a2df: static checks, build, all eight built shards, Windows capability/package and Linux/macOS native package checks passed. Source tests still exit unexpectedly in javascriptSemanticAnalysis.reference_lifetimes.test.ts, matching both original-main runs 40077564438 and 40079461941; Portable/CI required propagate that failure. The overall CI is not green. Independent bounded local probes of that source file crossed a 1.5 GiB process-family stop; no OOM was needed to reproduce the resource defect. It is being repaired in the next isolated change.

Codex review was unavailable: the bot reported exhausted review credits, with no inline code findings. This is not represented as a completed automated review. The diff was manually inspected for dependency scope, the source/no-development-dependency guards, idempotence and failure handling; executed validation is listed above.

Author readiness

Human owner: @gensokyo-dev

The owner explicitly delegated readiness declarations and agent-managed review. Inspection and execution were performed by Codex; no separate human inspection is claimed.

  • I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work.
  • I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps.
  • I declare this PR ready for initial maintainer review.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/6978 **Author:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Created:** 10/24/2026 **Status:** ✅ Merged **Merged:** 10/24/2026 **Merged by:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Base:** `main` ← **Head:** `fix/release-patch-bootstrap-20261024` --- ### 📝 Commits (1) - [`d3044a2`](https://github.com/morluto/rea/commit/d3044a2df70147027aaf653ccb206d693907fcf8) fix(build): prepare release dependency types during installation ### 📊 Changes **1 file changed** (+14 additions, -3 deletions) <details> <summary>View changed files</summary> 📝 `scripts/prepare.mjs` (+14 -3) </details> ### 📄 Description ## Problem and outcome A clean install at main `e3a6ce40f` fails type checking: `releaseProposal.test.ts` passes `includeFiles`, but upstream `CommitIteratorOptions` does not declare it. The repository's exact release-please patch already contains both the runtime change and its declaration; it was applied only inside the release command or test `beforeAll`. A typecheck before those commands therefore reads different dependency types. Apply that same idempotent, version-checked patch during source development installation, independently of `HUSKY=0`. Reuse the dependency-availability guard for Husky. Published installs without source, and source installs omitting development dependencies, skip it. This changes no dependency versions and keeps one patch owner; no casts, duplicate interface or checker exceptions. No separate issue was opened for this direct main-CI repair. ## Executed validation Pinned Node 24.22.1 / npm 11.16.0, Linux x64, two CPUs; checks below executed on `e3a6ce40f` plus this diff: - Fresh baseline `npm ci` then `npm run typecheck`: reproduced TS2353 at line 378 (8.28 s wall / 16.12 s CPU / 1114.1 MiB sampled process-family RSS). - Fresh fixed `HUSKY=0 npm ci`: passed; two further `HUSKY=0 node scripts/prepare.mjs` executions passed. The installed declaration contains `includeFiles` before any test runs. - Complete `releaseProposal` and `releaseWorkflow` files: **69 passed**, including exact patch idempotence, mismatched versions, partial patches and release history/attribution behavior (4.90 s wall / 6.75 s CPU / 622.6 MiB). - Isolated real prepare processes with no source and with source but no development dependencies: both exited 0 with empty output, without a release helper present. - Final `npm run check` and `git diff --check`: passed (56.10 s wall / 99.56 s CPU / 2564.6 MiB). An earlier formatting-only failure was corrected before this final check. Tests used warm runtime artifacts and fresh fixture processes. RSS sums descendants at 100 ms intervals; shared pages may double-count and short-lived/reparented children may be missed. Runs had elapsed guards and an 8 GiB sampled stop. No OOM or speedup claim; agent tokens were not measured. The branch was subsequently rebased onto latest main `d9660eb03`, which adds unrelated verifier/cleanup changes; CI verifies that integrated head. The independently observed source-worker exit and resource-boundary failure remain under separate investigation and are not claimed fixed by this installation change. ## CI and review [CI 40080406965](https://github.com/morluto/rea/actions/runs/40080406965) completed on `d3044a2df`: static checks, build, **all eight built shards**, Windows capability/package and Linux/macOS native package checks passed. Source tests still exit unexpectedly in `javascriptSemanticAnalysis.reference_lifetimes.test.ts`, matching both original-main runs 40077564438 and 40079461941; Portable/CI required propagate that failure. The overall CI is **not green**. Independent bounded local probes of that source file crossed a 1.5 GiB process-family stop; no OOM was needed to reproduce the resource defect. It is being repaired in the next isolated change. Codex review was unavailable: the bot reported exhausted review credits, with no inline code findings. This is not represented as a completed automated review. The diff was manually inspected for dependency scope, the source/no-development-dependency guards, idempotence and failure handling; executed validation is listed above. ## Author readiness Human owner: @gensokyo-dev The owner explicitly delegated readiness declarations and agent-managed review. Inspection and execution were performed by Codex; no separate human inspection is claimed. - [x] I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work. - [x] I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps. - [x] I declare this PR ready for initial maintainer review. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-11-01 21:48:11 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#7489
No description provided.