Commit Graph

878 Commits

Author SHA1 Message Date
jiangcuo
392a52b75e fix loong64 crossbuild
Some checks failed
CI / test (20, ubuntu-latest) (push) Has been cancelled
CI / test (22, ubuntu-latest) (push) Has been cancelled
CI / test (24, ubuntu-latest) (push) Has been cancelled
Check Latest Node / check (20) (push) Has been cancelled
Check Latest Node / check (22) (push) Has been cancelled
Check Latest Node / check (24) (push) Has been cancelled
2026-02-04 21:19:23 +08:00
jiangcuo
236d01423e feat: add loong64 support
Some checks are pending
CI / test (20, ubuntu-latest) (push) Waiting to run
CI / test (22, ubuntu-latest) (push) Waiting to run
CI / test (24, ubuntu-latest) (push) Waiting to run
2026-01-13 11:48:32 +08:00
Michael Kriese
a024a39fb5
feat: use native arm64 runner for aarch64 builds (#142)
- closes #141
2026-01-12 17:57:46 +01:00
Copilot
eacb3c0090
docs: update README with glibc 2.35 requirement for arm64 binaries (#140)
arm64 binaries are now built on Ubuntu Jammy (glibc 2.35) via
`Dockerfile.linuxcross`, while x64 binaries remain on Oracle Linux 8
(glibc 2.28). This causes arm64 binaries to fail on Ubuntu Focal and
earlier.

## Changes

Updated Binary Compatibility table for Node 18, 20, 22 linux arm64:
- Ubuntu 20.04 → 22.04
- Debian bullseye → bookworm  
- glibc >= 2.31 → >= 2.35

<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> 
> ----
> 
> *This section details on the original issue you should resolve*
> 
> <issue_title>Update readme with new glibc requirements</issue_title>
> <issue_description>Binaries are built with ubuntu jammy since two
month, so the binaries (tested node v22+) now need glibc v2.32+.
> At lease the arm64 version fails, the x68_64 still works on ubuntu
focal.
> 
> Probably related to yao-pkg/pkg-fetch#123
> 
> -
https://github.com/yao-pkg/pkg-fetch/tree/main?tab=readme-ov-file#binary-compatibility
> -
https://github.com/containerbase/wally-prebuild/actions/runs/20906746116/job/60061656644#step:3:271
> -
https://github.com/containerbase/wally-prebuild/actions/runs/20906746116/job/60061656650#step:3:275</issue_description>
> 
> ## Comments on the Issue (you are @copilot in this section)
> 
> <comments>
> </comments>
> 


</details>



<!-- START COPILOT CODING AGENT SUFFIX -->

- Fixes yao-pkg/pkg-fetch#139

<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in
our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: robertsLando <11502495+robertsLando@users.noreply.github.com>
2026-01-12 10:20:56 +01:00
Orgad Shaneh
b5cada3e62
chore: migrate to es2022 target (#138)
es5 is extremely unreadable and hard to debug.
2025-12-29 16:26:30 +00:00
robertsLando
7cc107147a
Release 3.5.31 2025-12-11 17:28:50 +01:00
github-actions[bot]
f6ed5bfbda
fix: update expected shas (#136)
Update expected sha256sums for Node.js

3e7ddc77635f6225b8cba469b948752d16decdb94293b13ea6c9ce4792526d2e
node-v20.19.6-alpine-arm64
39f3a1fb1c83ecd3483e4335124bd9282dba239fcdf85430b7aea8fbfb8a1206
node-v20.19.6-alpine-x64
3f19fd984a558d2b3cc2f78fae2a3927b9d87a631ad454eeccf7ffd10e7c6f19
node-v20.19.6-linux-arm64
de270a8b37db68307fead80ddb75718c5599d4a96004d052588e24fac0a5e8f5
node-v20.19.6-linux-x64
049aefa14949d95ded5e3761b263171b1a5d430c1b6af10ab82ffbdfd945507a
node-v20.19.6-linuxstatic-arm64
96b66e0cb1bc3f53e4e652e4a1b4d1c51acec13d2c9136c7cb0f565d75ba60f5
node-v20.19.6-linuxstatic-armv7
ddc9c76e002e6e1768139099d27bf297bf564750187cef230e3113f773a97724
node-v20.19.6-linuxstatic-x64
4f50f1d0484cc69043abacd266de603773dc84a2d5ae0233453c701fed0d2241
node-v20.19.6-macos-arm64
9ed57a94c5dfc099fc262884b633fad61a7fba19b4b43ca2fd7a2ec0ffa5580d
node-v20.19.6-macos-x64
a0384fe007e78340cc863224dafd5a6de5c97b83ea8c764e1f31abfeaea07d03
node-v20.19.6-win-arm64
3203fce16436a5e78f77e927c2d1616404d567e20fd11d9f21cb41aa524978a7
node-v20.19.6-win-x64
7795a8932f8dfdebc3636cf83bfa69b7da2e4256dbfa99fe39a4c201a95d70f8
node-v24.12.0-alpine-arm64
d157149a911313dda8ceb6bc93096d531a850b0e6c1b76b2ac721e4f49413ce9
node-v24.12.0-alpine-x64
9a5816b9e3552bb5a914aeed16326a569e18dcc17f07ad8dd28b4a7fa67066a4
node-v24.12.0-linux-arm64
81a0b40e6d7d14d501e100a5a1f08eb3621c2323ee66c6bfd42f7bf7407b06dc
node-v24.12.0-linux-x64
fdb80c730160db3157923e8fef52df595aba597757affb9f7c0e11c5562f4ccd
node-v24.12.0-linuxstatic-arm64
4f9f3c2a1e3155f4203f8043e04412e7be90dc16ac7f78341083f9f1076b138c
node-v24.12.0-linuxstatic-x64
9dffdd09697f041369fec623e86dc866f00a4daaa9da84808f7352372339d9de
node-v24.12.0-macos-arm64
a7e48452945f37a831f96ab49f52d5049b989c68137cd398553787d3d1b14554
node-v24.12.0-macos-x64
9db6863e384aa746d1ae369c38aa11f3e46550240bb0abcbedb27d2a085c669d
node-v24.12.0-win-arm64
78eda417c8baf713d1790b8b42d8e6eec846101bb4249776d68069d64d240570
node-v24.12.0-win-x64

Co-authored-by: robertsLando <robertsLando@users.noreply.github.com>
2025-12-11 17:26:22 +01:00
github-actions[bot]
f7756e1312
feat: add v24.12.0 patch (#135)
## Node.js Patch Update to v24.12.0

This PR updates the Node.js patch to version 24.12.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-11 10:02:09 +01:00
github-actions[bot]
0808cce5dd
feat: add v20.19.6 patch (#133)
## Node.js Patch Update to v20.19.6

This PR updates the Node.js patch to version 20.19.6.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-26 08:26:51 +01:00
github-actions[bot]
7a9180c40e
feat: add v24.11.1 patch (#129)
## Node.js Patch Update to v24.11.1

This PR updates the Node.js patch to version 24.11.1.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 09:00:55 +01:00
robertsLando
24fd7cfe79
Release 3.5.30 2025-10-29 15:53:47 +01:00
github-actions[bot]
ba6149de39
fix: update expected shas (#128)
Update expected sha256sums for Node.js

Co-authored-by: robertsLando <robertsLando@users.noreply.github.com>
2025-10-29 15:06:25 +01:00
robertsLando
54188cbe05
feat: add workflow_call inputs for expected sha256sums 2025-10-29 09:12:36 +01:00
github-actions[bot]
6f8ffd2434
feat: add v24.11.0 patch (#127)
## Node.js Patch Update to v24.11.0

This PR updates the Node.js patch to version 24.11.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Daniel Lando <daniel.sorridi@gmail.com>
2025-10-29 08:25:12 +01:00
github-actions[bot]
61f032fd3c
feat: add v22.21.1 patch (#126)
## Node.js Patch Update to v22.21.1

This PR updates the Node.js patch to version 22.21.1.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 08:19:28 +01:00
github-actions[bot]
79fd995c74
feat: add v22.21.0 patch (#125)
## Node.js Patch Update to v22.21.0

This PR updates the Node.js patch to version 22.21.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-21 08:43:37 +02:00
robertsLando
cda5244d2a
feat: enhance shas parsing logic in update workflow 2025-10-20 18:15:55 +02:00
robertsLando
d1da523a05
Release 3.5.29 2025-10-15 17:47:11 +02:00
robertsLando
358c7b3ddd
feat: update expected SHAs for Node.js versions 22.20.0 and 24.10.0 2025-10-15 17:45:47 +02:00
github-actions[bot]
4ae27c5c2a
feat: add v24.10.0 patch (#120)
## Node.js Patch Update to v24.10.0

This PR updates the Node.js patch to version 24.10.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.
                 
### AI Resolution Details
Processing section 1/1 for ./src/node_contextify.cc...
Found 1 reject files to process
Processing: ./src/node_contextify.cc.rej -> ./src/node_contextify.cc
Prompt for OpenAI API:
I have a Git patch that failed to apply. Here's the specific section
that needs to be fixed:

REJECTED PATCH HUNK:
```
@@ -1118,6 +1134,10 @@
           .IsNothing())
     return;
 
+  if (sourceless && produce_cached_data) {
+    V8::DisableCompilationForSourcelessUse();
+  }
+
   TRACE_EVENT_END0(TRACING_CATEGORY_NODE2(vm, script), "ContextifyScript::New");
 }
 
```

CURRENT FILE SECTION (lines 1113-1128):
```
    return;
  }
  if (StoreCodeCacheResult(env,
                           self,
                           compile_options,
                           source,
                           produce_cached_data,
                           std::move(new_cached_data))
          .IsNothing()) {
    return;
  }
  if (self->Set(env->context(),
                env->source_url_string(),
                v8_script->GetSourceURL())
          .IsNothing()) {
    return;
```

Please apply the intended changes from the rejected hunk to this file
section. Return ONLY the corrected file section content, preserving the
exact line structure and formatting. Do not add explanations or markdown
formatting.
RESOLVED CONTENT for ./src/node_contextify.cc:
```
return;
  }
  if (StoreCodeCacheResult(env,
                           self,
                           compile_options,
                           source,
                           produce_cached_data,
                           std::move(new_cached_data))
          .IsNothing()) {
    return;
  }
  if (sourceless && produce_cached_data) {
    V8::DisableCompilationForSourcelessUse();
  }
  if (self->Set(env->context(),
                env->source_url_string(),
                v8_script->GetSourceURL())
          .IsNothing()) {
    return;
```
 Successfully resolved ./src/node_contextify.cc
CONFLICTS_RESOLVED=1
TOTAL_CONFLICTS=1
HAS_UNRESOLVED=False
Resolution summary: 1/1 conflicts resolved

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Daniel Lando <daniel.sorridi@gmail.com>
2025-10-14 10:02:24 +02:00
github-actions[bot]
fc9d107fd2
feat: add v22.20.0 patch (#114)
## Node.js Patch Update to v22.20.0

This PR updates the Node.js patch to version 22.20.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.
                 
### AI Resolution Details
Processing section 1/1 for ./src/node_options.cc...
Found 1 reject files to process
Processing: ./src/node_options.cc.rej -> ./src/node_options.cc
Prompt for OpenAI API:
I have a Git patch that failed to apply. Here's the specific section
that needs to be fixed:

REJECTED PATCH HUNK:
```
@@ -319,6 +319,7 @@
 // TODO(addaleax): Make that unnecessary.
 
 DebugOptionsParser::DebugOptionsParser() {
+  return;
 #ifndef DISABLE_SINGLE_EXECUTABLE_APPLICATION
   if (sea::IsSingleExecutable()) return;
 #endif
```

CURRENT FILE SECTION (lines 314-329):
```
    args, exec_args, v8_args, options, required_env_settings, errors);
}

// XXX: If you add an option here, please also add it to doc/node.1 and
// doc/api/cli.md
// TODO(addaleax): Make that unnecessary.

DebugOptionsParser::DebugOptionsParser() {
  AddOption("--inspect-port",
            "set host:port for inspector",
            &DebugOptions::host_port,
            kAllowedInEnvvar);
  AddAlias("--debug-port", "--inspect-port");

  AddOption("--inspect",
            "activate inspector on host:port (default: 127.0.0.1:9229)",
```

Please apply the intended changes from the rejected hunk to this file
section. Return ONLY the corrected file section content, preserving the
exact line structure and formatting. Do not add explanations or markdown
formatting.
RESOLVED CONTENT for ./src/node_options.cc:
```
args, exec_args, v8_args, options, required_env_settings, errors);
}

// XXX: If you add an option here, please also add it to doc/node.1 and
// doc/api/cli.md
// TODO(addaleax): Make that unnecessary.

DebugOptionsParser::DebugOptionsParser() {
  return;
  AddOption("--inspect-port",
            "set host:port for inspector",
            &DebugOptions::host_port,
            kAllowedInEnvvar);
  AddAlias("--debug-port", "--inspect-port");

  AddOption("--inspect",
            "activate inspector on host:port (default: 127.0.0.1:9229)",
```
 Successfully resolved ./src/node_options.cc
CONFLICTS_RESOLVED=1
TOTAL_CONFLICTS=1
HAS_UNRESOLVED=False
Resolution summary: 1/1 conflicts resolved

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-14 10:01:30 +02:00
faulpeltz
bd96eb569d
build: use jammy to build linux.cross (#123) by @faulpeltz
Use Ubuntu Jammy for cross-building Linux ARM64 binaries using GCC 12

Fixes https://github.com/yao-pkg/pkg-fetch/issues/122
2025-10-13 14:40:45 +02:00
Daniel Lando
2f66258949
chore: switch to .release-it.json configuration (#119)
Replace the inline release-it configuration with a dedicated
.release-it.json file for better organization and maintainability.
2025-10-07 16:31:45 +02:00
robertsLando
370fbdbaa6
Release 3.5.28 2025-10-06 17:43:56 +02:00
robertsLando
39afdc1822
3.5.27 2025-10-06 17:42:34 +02:00
ranjith
d3d6a81ffc
feat: allow linuxstatic builds for ppc64 architecture (#118)
## Summary
Allow linuxstatic platform builds for ppc64 architecture by bypassing
the platform validation check.

## Changes
- Modified the platform validation logic in `lib/index.ts` to skip the
platform mismatch check when building for ppc64 architecture
- Added `&& arch !== 'ppc64'` condition to allow linuxstatic builds on
ppc64 without validation errors


## Impact
- Users can now build linuxstatic binaries for ppc64 architecture
without platform validation blocking the process
- No breaking changes to existing functionality
- Maintains existing platform validation for other architectures except
ppc64

## Use Case
This enables building static Linux binaries on ppc64 systems, which is
particularly useful for PowerPC environments that need statically linked
executables.

---------

Co-authored-by: Daniel Lando <daniel.sorridi@gmail.com>
2025-10-06 10:54:59 +02:00
robertsLando
3128ce55b5
Release 3.5.26 2025-10-03 08:18:16 +02:00
Copilot
08d19cd049
fix: bump tar-fs from 2.1.1 to 3.1.1 to fix security vulnerabilities (#117)
This PR addresses high severity security vulnerabilities in the `tar-fs`
dependency by upgrading from version 2.1.1 to 3.1.1.

## Security Issues Fixed

This update resolves the vulnerabilities referenced in:
-
[GHSA-8cj5-5rvv-wf4v](https://github.com/advisories/GHSA-8cj5-5rvv-wf4v)
-
[GHSA-vj76-c3g6-qr5v](https://github.com/advisories/GHSA-vj76-c3g6-qr5v)

## Changes

- Updated `tar-fs` dependency from `^2.1.1` to `^3.1.1` in
`package.json`
- Regenerated `yarn.lock` with the new dependency tree

## Compatibility

The upgrade maintains full backward compatibility with existing code.
The current usage of `tar.extract()` with `strip` and `map` options
continues to work identically:

```typescript
const extract = tar.extract(nodePath, {
  strip: 1,
  map: (header) => {
    // existing logic unchanged
    return header;
  },
});
```

## Testing

All existing functionality has been verified:
-  Node.js source archive extraction works correctly
-  Patch application continues to function as expected
-  Build and lint processes pass without issues
-  `test_patch.sh` script completes successfully
-  No new security vulnerabilities introduced

The upgrade resolves the security issues while maintaining all existing
functionality with zero breaking changes.

<!-- START COPILOT CODING AGENT SUFFIX -->



<details>

<summary>Original prompt</summary>

> 
> ----
> 
> *This section details on the original issue you should resolve*
> 
> <issue_title>Bump tar-fs (high severity vulnerabilities)</issue_title>
> <issue_description>See:
> https://github.com/advisories/GHSA-8cj5-5rvv-wf4v
> https://github.com/advisories/GHSA-vj76-c3g6-qr5v
> </issue_description>
> 
> <agent_instructions>Bump tar-fs to fix security vulnerability, ensure
tests are passing</agent_instructions>
> 
> ## Comments on the Issue (you are @copilot in this section)
> 
> <comments>
> </comments>
> 


</details>
Fixes yao-pkg/pkg-fetch#116

<!-- START COPILOT CODING AGENT TIPS -->
---

💡 You can make Copilot smarter by setting up custom instructions,
customizing its development environment and configuring Model Context
Protocol (MCP) servers. Learn more [Copilot coding agent
tips](https://gh.io/copilot-coding-agent-tips) in the docs.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: robertsLando <11502495+robertsLando@users.noreply.github.com>
2025-10-02 17:23:46 +02:00
github-actions[bot]
39131f5b18
feat: add v24.9.0 patch (#115)
## Node.js Patch Update to v24.9.0

This PR updates the Node.js patch to version 24.9.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-29 10:32:12 +02:00
robertsLando
123f4d0c0c
Release 3.5.25 2025-09-26 17:09:06 +02:00
robertsLando
65f6deaf00
feat: add support for Node.js versions 20.19.5, 22.19.0, and 24.8.0 in expected SHAs 2025-09-26 17:07:20 +02:00
ranjith
38a22f9aa9
fix: macOS x64 build timeout by using Intel runners and 4-core parallelization (#113)
### Problem
The macOS x64 build was timing out when using `macos-14` runners with
`MAKE_JOB_COUNT=2`, likely due to cross-compilation overhead.

### Solution
- Changed `runs-on` from `macos-14` to `macos-15-intel` to use native
Intel hardware
- Increased `MAKE_JOB_COUNT` from `2` to `4` to utilize all 4 CPU cores
available on Intel runners

### Result
Resolves build timeout issues for macOS x64 builds by eliminating
cross-compilation and maximising CPU utilization.

Tested Build:
https://github.com/nrranjithnr/pkg-fetch/actions/runs/17977769583
2025-09-25 09:07:37 +02:00
faulpeltz
a4bdb1649a
feat: node 24 support and attempt some Node 22 fixes (by @faulpeltz) (#107)
This PR adds Node24 support

**Node/V8 changes:**
- Move to new V8 syntax for some constructs (e.g. Cast<>)
- Tracked down two issues which caused the read-only snapshot to be
different across platforms:
- in `read-only-serializer:258` the "live" pointer gets overwritten by
the encoded slot (EncodedTagged).
If V8_COMPRESS_POINTERS is not enabled, EncodedTagged is 4 bytes, but
the live pointer is 8 bytes.
memcpy() only copies EncodeTagged leaving 4bytes of "garbage" (=previous
upper pointer half) which is semi-random per run - fixed this by
clearing the whole value first
- the CSA_HOLE_SECURITY_CHECK macro somehow leaves a string with a
platform-dependent filename in the readonly heap as a constant, replaced
that with "placeholder"
- add PKG_TRACE_READONLY_HEAP blocks for debugging further snapshot
issues

Those fixes partially fix the sourceless cross-build issues introduced
in Node 22 - For my test builds linux/linuxstatic/alpine/win on x64 are
now compatible again. The heap contents on macos builds and other arm64
is wildly different, not sure why. I don't think this kind of
compatibility is a goal for the V8 snapshot implementation in general.
(This affects Node SEA as well, but SEA always has the source to fall
back onto, which incurs a small performance hit)

**Build Changes:**

- Update linux/linuxcross build to use gcc 12 (required for Node 24)
- For aloine/linuxstatic: Node 24 doesn't build on the muslcc image used
previously, the image is unmaintained (although the toolchain builder
isn't, we could build our own image)
- Moved alpine/linuxstatic to native Alpine x64/arm64 toolchains, which
seems to work quite well
- Some minor upgrades to the Windows build, but had to enable `full-icu`
for now because the ICU code gen step crashes with `small-icu` on the GH
action build runners (not on my Windows test machine though)
- Moved the macos build to macos 14 which is now required for Node 24 -
x64 is now cross-built from arm64 because GH doesn't offer free macos14
x64 build workers
- Removed all builds for Node 18 and older
- 
**Notes:**
- Needs more testing, I did some basic testing for x64 builds as well as
macos/arm64
- I added a backport of the snapshot-determinism fixes to the latest
Node 22 patch
2025-09-17 14:50:36 +02:00
github-actions[bot]
78d158cdcb
feat: add v20.19.5 patch (#109)
## Node.js Patch Update to v20.19.5

This PR updates the Node.js patch to version 20.19.5.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 17:29:39 +02:00
github-actions[bot]
03677a1f15
feat: add v22.19.0 patch (#106)
## Node.js Patch Update to v22.19.0

This PR updates the Node.js patch to version 22.19.0.

The workflow automatically attempts to resolve patch conflicts using AI
when the OpenAI API key is available.
                 
### AI Resolution Details
Processing section 1/1 for ./lib/internal/modules/cjs/loader.js...
Found 1 reject files to process
Processing: ./lib/internal/modules/cjs/loader.js.rej ->
./lib/internal/modules/cjs/loader.js
Prompt for OpenAI API:
I have a Git patch that failed to apply. Here's the specific section
that needs to be fixed:

REJECTED PATCH HUNK:
```
@@ -250,12 +250,16 @@
   // Guard against internal bugs where a non-string filename is passed in by mistake.
   assert(typeof filename === 'string');
 
+  const origFilename = filename;
   filename = path.toNamespacedPath(filename);
   if (statCache !== null) {
     const result = statCache.get(filename);
     if (result !== undefined) { return result; }
   }
-  const result = internalFsBinding.internalModuleStat(internalFsBinding, filename);
+  const fs = require('fs');
+  const result = fs.existsSync(origFilename) ?
+    (fs.statSync(origFilename).isDirectory() ? 1 : 0) : -1;
+
   if (statCache !== null && result >= 0) {
     // Only set cache when `internalModuleStat(internalFsBinding, filename)` succeeds.
     statCache.set(filename, result);
```

CURRENT FILE SECTION (lines 245-266):
```
}

/**
 * Get a path's properties, using an in-memory cache to minimize lookups.
 * @param {string} filename Absolute path to the file
 */
function stat(filename) {
  // Guard against internal bugs where a non-string filename is passed in by mistake.
  assert(typeof filename === 'string');

  filename = path.toNamespacedPath(filename);
  if (statCache !== null) {
    const result = statCache.get(filename);
    if (result !== undefined) { return result; }
  }
  const result = internalFsBinding.internalModuleStat(filename);
  if (statCache !== null && result >= 0) {
    // Only set cache when `internalModuleStat(filename)` succeeds.
    statCache.set(filename, result);
  }
  return result;
}
```

Please apply the intended changes from the rejected hunk to this file
section. Return ONLY the corrected file section content, preserving the
exact line structure and formatting. Do not add explanations or markdown
formatting.
RESOLVED CONTENT for ./lib/internal/modules/cjs/loader.js:
```
}

/**
 * Get a path's properties, using an in-memory cache to minimize lookups.
 * @param {string} filename Absolute path to the file
 */
function stat(filename) {
  // Guard against internal bugs where a non-string filename is passed in by mistake.
  assert(typeof filename === 'string');

  const origFilename = filename;
  filename = path.toNamespacedPath(filename);
  if (statCache !== null) {
    const result = statCache.get(filename);
    if (result !== undefined) { return result; }
  }
  const fs = require('fs');
  const result = fs.existsSync(origFilename) ?
    (fs.statSync(origFilename).isDirectory() ? 1 : 0) : -1;

  if (statCache !== null && result >= 0) {
    // Only set cache when `internalModuleStat(internalFsBinding, filename)` succeeds.
    statCache.set(filename, result);
  }
  return result;
}
```
 Successfully resolved ./lib/internal/modules/cjs/loader.js
CONFLICTS_RESOLVED=1
TOTAL_CONFLICTS=1
HAS_UNRESOLVED=False
Resolution summary: 1/1 conflicts resolved

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 12:20:05 +02:00
robertsLando
7898d82a59
fix: streamline resolution output handling for PR creation 2025-08-29 12:15:36 +02:00
robertsLando
45e2576f2f
fix: enhance logging format for resolved content in OpenAI API response 2025-08-29 08:21:20 +02:00
robertsLando
c41ab07b0e
fix: add logging for resolved content in OpenAI API response 2025-08-28 16:25:35 +02:00
robertsLando
7f35fce06c
fix: streamline PR creation message by removing redundant patch status details 2025-08-28 16:03:58 +02:00
robertsLando
206ea938f9
fix: remove unnecessary markdown formatting for resolution output in PR creation 2025-08-28 16:02:23 +02:00
robertsLando
e7241d02a4
fix: add resolution output handling for patch conflicts in Node.js workflow 2025-08-28 15:57:34 +02:00
robertsLando
23ba5a2bcc
fix: update response handling in OpenAI API call to correctly access content structure 2025-08-28 15:42:51 +02:00
robertsLando
799fbc1abe
fix: update OpenAI API call to use responses API 2025-08-28 15:38:20 +02:00
robertsLando
4f720b57f1
fix: improve error logging for OpenAI API call by removing stderr redirection 2025-08-28 15:30:12 +02:00
robertsLando
208016362b
fix: update OpenAI API call to use new endpoint and model, enhance prompt structure, and improve response handling 2025-08-28 15:28:02 +02:00
robertsLando
11940cd336
fix: reduce max_tokens for OpenAI API call to optimize response size 2025-08-28 15:06:40 +02:00
robertsLando
f88b149a26
fix: update system message to include JS expertise for OpenAI API conflict resolution 2025-08-28 14:59:32 +02:00
robertsLando
fd0e2f489e
fix: improve error logging for OpenAI API call by removing redundant stderr redirection 2025-08-28 14:57:07 +02:00
robertsLando
5b53026395
fix: enhance conflict resolution by improving hunk parsing and context extraction in OpenAI API integration 2025-08-28 14:54:11 +02:00
robertsLando
3c378db428
fix: add prompt logging for OpenAI API call in conflict resolution 2025-08-28 14:31:53 +02:00