tillerhand 3.42.0 → 3.42.1

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.
@@ -51,7 +51,12 @@ const NEEDS_APPROVAL = [
51
51
  // Each part of a command chain is checked alone: "rm -r node_modules && npx vitest run a.test.ts" does not change a test.
52
52
  const WRITER = /\b(rm|del|erase|rmdir|rd|unlink|mv|move|cp|copy|tee|truncate|touch|ln|dd|Set-Content|Add-Content|Out-File|Remove-Item|Move-Item|Copy-Item|Clear-Content)\b|\bcurl\b[^;&|]*\s(-o|--output)\b|\bwget\b[^;&|]*\s(-O|--output-document)\b|\bsed\b[^;&|]*\s(-[a-zA-Z]*i\S*|--in-place\b)|\bperl\b[^;&|]*\s-[a-zA-Z]*i|\bgit\s+(checkout|restore|rm|mv)\b/i;
53
53
  // Dependency and git internals are not the project's tests; a URL (curl … https://x/tests/a) or a dd input is not a target
54
- const isTestCode = (t) => !/(^|[/\\])(node_modules|\.git)([/\\]|$)|:\/\/|^if=/i.test(t) && (isTestFile(t) || /(^|[/\\])(tests?|__tests__|e2e|spec)[/\\]?$/i.test(t));
54
+ // Normalized first: node_modules/../tests/a.test.ts is a test path; only a path that stays under them is skipped
55
+ const isTestCode = (t) => {
56
+ if (/:\/\/|^if=/i.test(t)) return false;
57
+ const n = path.posix.normalize(t.replace(/\\/g, '/'));
58
+ return !/(^|\/)(node_modules|\.git)(\/|$)/i.test(n) && (isTestFile(n) || /(^|\/)(tests?|__tests__|e2e|spec)\/?$/i.test(n));
59
+ };
55
60
  const isTestPath = (t) => isTestCode(t) || isTestConfig(t);
56
61
  function writesTest(command, isPath = isTestPath) {
57
62
  return command.split(/&&|\|\||[;|\n]/).some((part) => {
@@ -57,9 +57,11 @@ function hook() {
57
57
  return [full, rel.startsWith('..') || path.isAbsolute(rel) ? full : rel];
58
58
  };
59
59
  // The real path too: a link or junction into the test folder, a Windows short name (TESTS~1)
60
+ // A new nested path (lnk/new/sub/x.ts): resolve the nearest folder that exists and append the rest
60
61
  const realOf = (p) => {
61
- try { return fs.realpathSync.native(p); } catch { /* a new file */ }
62
- try { return path.join(fs.realpathSync.native(path.dirname(p)), path.basename(p)); } catch { return p; }
62
+ for (let dir = p, rest = ''; ; rest = path.join(path.basename(dir), rest), dir = path.dirname(dir)) {
63
+ try { return path.join(fs.realpathSync.native(dir), rest); } catch { if (path.dirname(dir) === dir) return p; }
64
+ }
63
65
  };
64
66
  for (const f of g.files) {
65
67
  if (!f.path) continue;
package/README.en.md CHANGED
@@ -6,7 +6,7 @@
6
6
  </p>
7
7
 
8
8
  <p align="center">
9
- <a href="kit/CHANGELOG.md"><img alt="Version" src="https://img.shields.io/badge/version-3.42.0-2a78d6?style=flat-square"></a>
9
+ <a href="kit/CHANGELOG.md"><img alt="Version" src="https://img.shields.io/badge/version-3.42.1-2a78d6?style=flat-square"></a>
10
10
  <a href="LICENSE"><img alt="License: MIT" src="https://img.shields.io/badge/license-MIT-2a78d6?style=flat-square"></a>
11
11
  <img alt="Claude Code" src="https://img.shields.io/badge/Claude%20Code-ready-d97757?style=flat-square">
12
12
  <img alt="Also Codex and Antigravity" src="https://img.shields.io/badge/also-Codex%20%C2%B7%20Antigravity-5b6577?style=flat-square">
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
  </p>
7
7
 
8
8
  <p align="center">
9
- <a href="kit/CHANGELOG.md"><img alt="Sürüm" src="https://img.shields.io/badge/s%C3%BCr%C3%BCm-3.42.0-2a78d6?style=flat-square"></a>
9
+ <a href="kit/CHANGELOG.md"><img alt="Sürüm" src="https://img.shields.io/badge/s%C3%BCr%C3%BCm-3.42.1-2a78d6?style=flat-square"></a>
10
10
  <a href="LICENSE"><img alt="Lisans: MIT" src="https://img.shields.io/badge/lisans-MIT-2a78d6?style=flat-square"></a>
11
11
  <img alt="Claude Code" src="https://img.shields.io/badge/Claude%20Code-haz%C4%B1r-d97757?style=flat-square">
12
12
  <img alt="Codex ve Antigravity" src="https://img.shields.io/badge/ayr%C4%B1ca-Codex%20%C2%B7%20Antigravity-5b6577?style=flat-square">
package/kit/CHANGELOG.md CHANGED
@@ -3,6 +3,11 @@
3
3
  Kit sürümü `kit/VERSION` dosyasında. Bir projeyi güncellemek: projede `/kit-update`.
4
4
  "Elle uyarla" notu olan maddeler projeye ait dosyalardadır; güncelleme bunlara dokunmaz.
5
5
 
6
+ ## [3.42.1] - 2026-10-27
7
+
8
+ ### Düzeltilen
9
+ - **Test ayrımında iki yol kaçağı kapandı.** `node_modules/../tests/a.test.ts` gibi `..` içeren yollar artık normalleştirilip test yolu sayılıyor; test klasörüne giden bir bağın altında henüz var olmayan iç içe bir yola yazım da yakalanıyor.
10
+
6
11
  ## [3.42.0] - 2026-10-27
7
12
 
8
13
  ### Eklenen
package/kit/VERSION CHANGED
@@ -1 +1 @@
1
- 3.42.0
1
+ 3.42.1
package/kit/guide.html CHANGED
@@ -287,7 +287,7 @@ footer .container { display: flex; flex-wrap: wrap; gap: 16px; justify-content:
287
287
  <section class="hero">
288
288
  <div class="container">
289
289
  <div>
290
- <span class="pill"><b>v3.42.0</b> Claude Code için başlangıç kiti · MIT</span>
290
+ <span class="pill"><b>v3.42.1</b> Claude Code için başlangıç kiti · MIT</span>
291
291
  <h1>Kodu AI yazar.<br><em>Dümen sende.</em></h1>
292
292
  <p class="sub">TillerHand, Claude Code ile bir ürünü fikirden canlıya ve bakıma kadar götürür. Her önemli kararda AI sana seçenekleri, önerisini ve her seçeneğin bedelini sunar. Bir uzman kurulu işi denetler, korumalar hatayı daha olmadan durdurur.</p>
293
293
  <div class="install"><span id="cmd">npx tillerhand init</span><button class="copy" type="button" data-copy="cmd">Kopyala</button></div>
@@ -1070,7 +1070,7 @@ Sıradaki: G-013 şifre sıfırlama · bekleyen karar: e-posta servisi</pre>
1070
1070
  <footer>
1071
1071
  <div class="container">
1072
1072
  <a class="brand" href="#top" style="font-size:16px"><svg class="mark" style="width:22px;height:22px"><use href="#mark"/></svg>TillerHand</a>
1073
- <span>Sürüm 3.42.0 · <a href="https://github.com/burakdogrul/TillerHand">GitHub</a> · <a href="https://github.com/burakdogrul/TillerHand/blob/main/LICENSE">MIT lisansı</a> · KVKK bölümü kontrol listesidir, hukuki görüş değildir.</span>
1073
+ <span>Sürüm 3.42.1 · <a href="https://github.com/burakdogrul/TillerHand">GitHub</a> · <a href="https://github.com/burakdogrul/TillerHand/blob/main/LICENSE">MIT lisansı</a> · KVKK bölümü kontrol listesidir, hukuki görüş değildir.</span>
1074
1074
  </div>
1075
1075
  </footer>
1076
1076
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tillerhand",
3
- "version": "3.42.0",
3
+ "version": "3.42.1",
4
4
  "description": "Claude Code, Codex ve Antigravity için Türkçe vibe coding kiti: kurallar, komutlar, korumalar ve proje şablonları.",
5
5
  "license": "MIT",
6
6
  "type": "module",