@bash0816/claude-code 2.1.215 → 2.1.216

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -37,7 +37,7 @@ npm が `claude` bin link を管理する状態になれば、通常の `npm ins
37
37
  Latest audited version / 最新監査済み版:
38
38
 
39
39
  ```sh
40
- npm install -g @bash0816/claude-code@2.1.214
40
+ npm install -g @bash0816/claude-code@2.1.215
41
41
  ```
42
42
 
43
43
  ## Update / 更新
@@ -535,6 +535,15 @@
535
535
  "entry_end_offset": 255687124,
536
536
  "tarball_integrity": "sha512-wyfnBQBkZpYKXQ2+SGqtJRqzGfm06zN94JoetsqJa8CYvCZvkzApfBRgqzsLALGBtLK7Xf13HdED+SPd1R3T9w==",
537
537
  "tarball_sha256": "0c8b5a54f30b08c4a1fbc3f88679c15d0ba10af0e7516862abaf4cb1414fb7ab",
538
+ "status": "termux_verified"
539
+ },
540
+ "2.1.216": {
541
+ "wrapper_spec": "@anthropic-ai/claude-code@2.1.216",
542
+ "native_spec": "@anthropic-ai/claude-code-linux-arm64@2.1.216",
543
+ "entry_js_offset": 237352308,
544
+ "entry_end_offset": 257798600,
545
+ "tarball_integrity": "sha512-g2/K+v6MiIKY65SlPoFv8cRbRvroHxhvHPCf8lPDMMyRLG9fpHGGLZSR21W8OPjbqTZK8GcFcOaKrjQJrWveZw==",
546
+ "tarball_sha256": "b95b5183b3e06ab23f8ea4d1d2781ea76640587251b8b710d6d981f22849c2ec",
538
547
  "status": "offset_discovered"
539
548
  }
540
549
  }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "manifest_version": 1,
3
3
  "package_name": "@bash0816/claude-code",
4
- "latest_audited_version": "2.1.214",
5
- "latest_candidate_version": "2.1.215",
6
- "previous_stable_version": "2.1.212",
4
+ "latest_audited_version": "2.1.215",
5
+ "latest_candidate_version": "2.1.216",
6
+ "previous_stable_version": "2.1.214",
7
7
  "stable_pinned_version": "2.1.193",
8
8
  "manifest_url": "https://raw.githubusercontent.com/bash0816/ClaudeCode-Termux/main/config/claude-termux-release-manifest.json"
9
9
  }
@@ -583,6 +583,7 @@ function rewriteNativeChunkSource(source) {
583
583
  const _bunPropertyAccessExpected = (() => {
584
584
  const _ver = String(process.env.CURRENT_CLAUDE_VERSION || '');
585
585
  const _m = _ver.match(/^(\d+)\.(\d+)\.(\d+)/);
586
+ if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 216)) return 40;
586
587
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 214)) return 39;
587
588
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 205)) return 38;
588
589
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 202)) return 41;
@@ -1274,6 +1275,7 @@ function rewriteNativeChunkSource(source) {
1274
1275
  const _bunPropertyAccessExpected = (() => {
1275
1276
  const _ver = String(process.env.CURRENT_CLAUDE_VERSION || '');
1276
1277
  const _m = _ver.match(/^(\d+)\.(\d+)\.(\d+)/);
1278
+ if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 216)) return 40;
1277
1279
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 214)) return 39;
1278
1280
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 205)) return 38;
1279
1281
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 202)) return 41;
@@ -441,6 +441,43 @@ test('rewriteNativeChunkSource rejects stale Bun property access count for versi
441
441
  }
442
442
  });
443
443
 
444
+ test('rewriteNativeChunkSource rewrites the synthetic bundle slice (version 2.1.216)', () => {
445
+ process.env.CURRENT_CLAUDE_VERSION = '2.1.216';
446
+ try {
447
+ const { rewriteNativeChunkSource } = loadHelperApi();
448
+ const typeofBun = Array.from({ length: 7 }, () => 'typeof Bun').join('; ');
449
+ const bunProps = Array.from({ length: 40 }, (_, index) => `Bun.p${index}`).join('; ');
450
+ const source = `function(exports, require, module, __filename, __dirname) { ${typeofBun}; typeof globalThis.Bun; globalThis.Bun; ${bunProps}; npmInstallDeprecated:!0; npmInstallDeprecated:!0 }`;
451
+ const patched = rewriteNativeChunkSource(source);
452
+
453
+ assert.match(patched, /var __claudeBun = globalThis\.__claudeBunShim;/);
454
+ assert.match(patched, /typeof __claudeBun/);
455
+ assert.match(patched, /typeof globalThis\.__claudeBun/);
456
+ assert.match(patched, /globalThis\.__claudeBun/);
457
+ assert.match(patched, /__claudeBun\./);
458
+ assert.equal((patched.match(/__claudeBun\./g) || []).length, 40);
459
+ } finally {
460
+ delete process.env.CURRENT_CLAUDE_VERSION;
461
+ }
462
+ });
463
+
464
+ test('rewriteNativeChunkSource rejects stale Bun property access count for version 2.1.216', () => {
465
+ process.env.CURRENT_CLAUDE_VERSION = '2.1.216';
466
+ try {
467
+ const { rewriteNativeChunkSource } = loadHelperApi();
468
+ const typeofBun = Array.from({ length: 7 }, () => 'typeof Bun').join('; ');
469
+ const bunProps = Array.from({ length: 39 }, (_, index) => `Bun.p${index}`).join('; ');
470
+ const source = `function(exports, require, module, __filename, __dirname) { ${typeofBun}; typeof globalThis.Bun; globalThis.Bun; ${bunProps}; npmInstallDeprecated:!0; npmInstallDeprecated:!0 }`;
471
+
472
+ assert.throws(
473
+ () => rewriteNativeChunkSource(source),
474
+ /unexpected Bun property access count 39/,
475
+ );
476
+ } finally {
477
+ delete process.env.CURRENT_CLAUDE_VERSION;
478
+ }
479
+ });
480
+
444
481
  test('rewriteNativeChunkSource rejects unexpected replacement counts', () => {
445
482
  const { rewriteNativeChunkSource } = loadHelperApi();
446
483
  const source = buildSyntheticBundleSource().replace('Bun.p30;', '');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bash0816/claude-code",
3
- "version": "2.1.215",
3
+ "version": "2.1.216",
4
4
  "description": "Unofficial Termux-native Claude Code wrapper with audited native replay",
5
5
  "license": "GPL-3.0-only",
6
6
  "bin": {