pumuki 6.3.325 → 6.3.326

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.
@@ -490,14 +490,21 @@ const isPlatformPath = (platform: PreWriteSkillsPlatform, filePath: string): boo
490
490
  const normalized = normalizeChangedPath(filePath).toLowerCase();
491
491
  if (platform === 'ios') {
492
492
  return normalized.endsWith('.swift')
493
- || normalized.startsWith('apps/ios/')
494
- || normalized.startsWith('ios/');
493
+ || normalized.endsWith('.m')
494
+ || normalized.endsWith('.mm')
495
+ || normalized.endsWith('.h')
496
+ || normalized.endsWith('.xib')
497
+ || normalized.endsWith('.storyboard')
498
+ || normalized.endsWith('.xcstrings')
499
+ || normalized.endsWith('.plist');
495
500
  }
496
501
  if (platform === 'android') {
497
502
  return normalized.endsWith('.kt')
498
503
  || normalized.endsWith('.kts')
499
- || normalized.startsWith('apps/android/')
500
- || normalized.startsWith('android/');
504
+ || normalized.endsWith('.java')
505
+ || normalized.endsWith('.xml')
506
+ || normalized.endsWith('.gradle')
507
+ || normalized.endsWith('.gradle.kts');
501
508
  }
502
509
  if (platform === 'backend') {
503
510
  const isTypeScriptOrJavaScript =
@@ -669,6 +676,16 @@ const collectPreWritePlatformSkillsViolations = (params: {
669
676
  if (detectedPlatforms.length === 0) {
670
677
  return [];
671
678
  }
679
+ const effectiveChangedPaths = collectPreWriteEffectiveChangedPaths(params.repoRoot);
680
+ const isNoCodeEffectiveScope =
681
+ effectiveChangedPaths.length > 0
682
+ && !hasEffectiveChangedCodePlatforms({
683
+ changedPaths: effectiveChangedPaths,
684
+ requiredPlatforms: detectedPlatforms,
685
+ });
686
+ if (isNoCodeEffectiveScope) {
687
+ return [];
688
+ }
672
689
 
673
690
  const violations: AiGateViolation[] = [];
674
691
  const missingScopeCoverage: string[] = [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pumuki",
3
- "version": "6.3.325",
3
+ "version": "6.3.326",
4
4
  "description": "Enterprise-grade AST Intelligence System with multi-platform support (iOS, Android, Backend, Frontend) and Feature-First + DDD + Clean Architecture enforcement. Includes dynamic violations API for intelligent querying.",
5
5
  "main": "index.js",
6
6
  "bin": {