pumuki-ast-hooks 5.5.7 → 5.5.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pumuki-ast-hooks",
3
- "version": "5.5.7",
3
+ "version": "5.5.9",
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": {
@@ -123,4 +123,4 @@
123
123
  "./skills": "./skills/skill-rules.json",
124
124
  "./hooks": "./hooks/index.js"
125
125
  }
126
- }
126
+ }
@@ -771,6 +771,13 @@ summarize_all() {
771
771
  print_final_signature
772
772
  exit 0
773
773
  fi
774
+
775
+ local is_revert_in_progress=0
776
+ if [[ "${AST_ALLOW_REVERT:-1}" == "1" ]] && command -v git >/dev/null 2>&1; then
777
+ if git rev-parse -q --verify REVERT_HEAD >/dev/null 2>&1; then
778
+ is_revert_in_progress=1
779
+ fi
780
+ fi
774
781
  local gate_crit gate_high gate_med gate_low gate_es
775
782
 
776
783
  # Decide gate values based on mode
@@ -795,6 +802,15 @@ summarize_all() {
795
802
  # Block on ANY violation (CRITICAL + HIGH + MEDIUM + LOW)
796
803
  if (( gate_crit > 0 || gate_high > 0 || gate_med > 0 || gate_low > 0 || gate_es > 0 )); then
797
804
  printf "\n"
805
+ if (( is_revert_in_progress == 1 )); then
806
+ printf "%b[REVERT MODE - COMMIT ALLOWED]%b\n" "$YELLOW" "$NC"
807
+ printf " Detected git revert in progress (REVERT_HEAD).\n"
808
+ printf " Skipping quality gate blocking for pre-existing violations.\n"
809
+ printf " Tip: set AST_ALLOW_REVERT=0 to enforce gates during revert.\n"
810
+ printf "\n"
811
+ print_final_signature
812
+ exit 0
813
+ fi
798
814
  if [[ "${BLOCK_ON_REPO_VIOLATIONS:-0}" == "1" ]]; then
799
815
  printf "%b[COMMIT BLOCKED - STRICT REPO+STAGING]%b\n" "$RED" "$NC"
800
816
  printf " CRITICAL violations (repository): %s\n" "$gate_crit"
@@ -819,6 +835,15 @@ summarize_all() {
819
835
  # Standard mode: Block only on CRITICAL/HIGH IN STAGING
820
836
  if (( gate_crit > 0 || gate_high > 0 )); then
821
837
  printf "\n"
838
+ if (( is_revert_in_progress == 1 )); then
839
+ printf "%b[REVERT MODE - COMMIT ALLOWED]%b\n" "$YELLOW" "$NC"
840
+ printf " Detected git revert in progress (REVERT_HEAD).\n"
841
+ printf " Skipping quality gate blocking for pre-existing violations.\n"
842
+ printf " Tip: set AST_ALLOW_REVERT=0 to enforce gates during revert.\n"
843
+ printf "\n"
844
+ print_final_signature
845
+ exit 0
846
+ fi
822
847
  printf "%b[COMMIT BLOCKED - CRITICAL/HIGH]%b\n" "$RED" "$NC"
823
848
  printf " CRITICAL violations in staging: %s\n" "$gate_crit"
824
849
  printf " HIGH violations in staging: %s\n" "$gate_high"