|
| 1 | +#!/usr/bin/env bash |
| 2 | +set -euo pipefail |
| 3 | + |
| 4 | +GROWTH_NAME="brainwire" |
| 5 | +PROJECT_ROOT="$(cd "$(dirname "$0")/.." && pwd)" |
| 6 | +DOMAIN="neuroscience" |
| 7 | +MAX_CYCLES=${MAX_CYCLES:-${1:-999}} |
| 8 | +INTERVAL=${INTERVAL:-${2:-1800}} |
| 9 | + |
| 10 | +COMMON="$HOME/Dev/nexus6/scripts/lib/growth_common.sh" |
| 11 | +source "$COMMON" |
| 12 | + |
| 13 | +domain_phases() { |
| 14 | + local cycle="$1" load="$2" |
| 15 | + |
| 16 | + # Phase 1: 소스 파일 인벤토리 |
| 17 | + local py_count |
| 18 | + py_count=$(find "$PROJECT_ROOT/src" -name '*.py' 2>/dev/null | wc -l | tr -d ' ') |
| 19 | + log_info "Phase[inventory] src/*.py count: $py_count" |
| 20 | + write_growth_bus "inventory" "ok" "py_files=$py_count" |
| 21 | + |
| 22 | + # Phase 2: 의식 브릿지 확인 |
| 23 | + if [ -f "$PROJECT_ROOT/src/consciousness_bridge.py" ]; then |
| 24 | + log_info "Phase[consciousness] consciousness_bridge.py exists" |
| 25 | + write_growth_bus "consciousness_bridge" "ok" |
| 26 | + else |
| 27 | + log_warn "Phase[consciousness] consciousness_bridge.py missing" |
| 28 | + write_growth_bus "consciousness_bridge" "warn" "file_missing" |
| 29 | + fi |
| 30 | + |
| 31 | + # Phase 3: .shared 심링크 확인 및 자동복구 |
| 32 | + local shared_link="$PROJECT_ROOT/.shared" |
| 33 | + if [ -L "$shared_link" ] && [ -d "$shared_link" ]; then |
| 34 | + log_info "Phase[shared_link] .shared symlink OK" |
| 35 | + write_growth_bus "shared_link" "ok" |
| 36 | + else |
| 37 | + log_warn "Phase[shared_link] .shared symlink broken — auto-repair" |
| 38 | + ln -sf "$HOME/Dev/nexus6/shared" "$shared_link" |
| 39 | + write_growth_bus "shared_link" "repaired" "symlink_recreated" |
| 40 | + fi |
| 41 | + |
| 42 | + # Phase 4: 성장 스캔 |
| 43 | + if [ -f "$PROJECT_ROOT/.growth/scan.py" ]; then |
| 44 | + log_info "Phase[growth_scan] running .growth/scan.py" |
| 45 | + python3 "$PROJECT_ROOT/.growth/scan.py" >> "$GROWTH_LOG" 2>&1 || true |
| 46 | + write_growth_bus "growth_scan" "ok" |
| 47 | + else |
| 48 | + log_info "Phase[growth_scan] .growth/scan.py not found — skip" |
| 49 | + write_growth_bus "growth_scan" "skip" "no_scan_script" |
| 50 | + fi |
| 51 | +} |
| 52 | + |
| 53 | +run_growth_loop "domain_phases" |
0 commit comments