{ "permissions": { "allow": [ "PowerShell(Get-ChildItem -Path \"d:\\\\Project\\\\backend\" -File | Where-Object { $_.Name -match \"^\\(app|server|index\\)\\\\.js$\" })", "PowerShell(Get-ChildItem -Path \"d:\\\\Project\\\\backend\" -Directory | Where-Object { $_.Name -in @\\(\"lib\", \"services\", \"config\", \"utils\"\\) })", "PowerShell(head -20)", "PowerShell(node -e \"require\\('./services/projectStore'\\); require\\('./routes/projects'\\); console.log\\('OK'\\)\" 2>&1)", "PowerShell(\\(Get-Content \"d:\\\\Project\\\\backend\\\\public\\\\approvals.html\" -Raw\\) -replace '📎 Attachments', 'Attachments' | Set-Content \"d:\\\\Project\\\\backend\\\\public\\\\approvals.html\" -Encoding utf8)", "Bash(cd /d \"d:\\\\Project\\\\backend\")", "Bash(node -e ' *)", "Bash(npm --version)", "Bash(node -e \"require\\('dotenv'\\).config\\(\\); console.log\\('PORT:', process.env.PORT||5000\\); console.log\\('SQL_SERVER:', process.env.SQL_SERVER ? 'set' : 'not set'\\); console.log\\('SQL_USER:', process.env.SQL_USER ? 'set' : 'not set'\\)\")", "Bash(node server.js)", "Bash(curl -s http://localhost:5000/ -o /dev/null -w \"%{http_code}\")", "Bash(curl -s http://localhost:5000/api/auth/login -X POST -H \"Content-Type: application/json\" -d \"{}\" -o /dev/null -w \"%{http_code}\")", "PowerShell(Invoke-WebRequest -Uri \"https://unpkg.com/lucide@0.399.0/dist/umd/lucide.min.js\" -OutFile \"d:\\\\Project\\\\backend\\\\public\\\\lucide.min.js\" -TimeoutSec 30; Write-Host \"Done, size: $\\(\\(Get-Item 'd:\\\\Project\\\\backend\\\\public\\\\lucide.min.js'\\).Length\\) bytes\")", "PowerShell($content = Get-Content \"d:\\\\Project\\\\backend\\\\public\\\\lucide.min.js\" -Raw; @\\('factory','building2','scale','fileInput','arrowLeftRight'\\) | ForEach-Object { $found = $content -match \"`\"$_`\"\"; Write-Host \"$_ : $found\" })", "PowerShell($content = Get-Content \"d:\\\\Project\\\\backend\\\\public\\\\lucide.min.js\" -Raw; @\\('Factory','Building2','Scale','FileInput','ArrowLeftRight','LayoutDashboard'\\) | ForEach-Object { $found = $content -match $_; Write-Host \"$_ : $found\" })", "PowerShell($content = Get-Content \"d:\\\\Project\\\\backend\\\\public\\\\lucide.min.js\" -Raw; $idx = $content.IndexOf\\('createIcons'\\); $content.Substring\\([Math]::Max\\(0,$idx-20\\), [Math]::Min\\(500,$content.Length-$idx+20\\)\\))", "PowerShell($content = Get-Content \"d:\\\\Project\\\\backend\\\\public\\\\lucide.min.js\" -Raw; $idx = $content.IndexOf\\('\"icons\"'\\); $content.Substring\\([Math]::Max\\(0,$idx-100\\), 300\\))", "Bash(node -e \"const lucide = require\\('d:/Project/backend/public/lucide.min.js'\\); console.log\\('keys:', Object.keys\\(lucide\\).slice\\(0,10\\)\\); console.log\\('has icons:', 'icons' in lucide\\); console.log\\('LayoutDashboard type:', typeof lucide.LayoutDashboard\\); console.log\\('Package type:', typeof lucide.Package\\);\")", "Bash(node -e \"const lucide = require\\('d:/Project/backend/public/lucide.min.js'\\); const ik = Object.keys\\(lucide.icons\\); console.log\\('icons count:', ik.length\\); console.log\\('icons sample:', ik.slice\\(0,5\\)\\); console.log\\('icons.LayoutDashboard type:', typeof lucide.icons.LayoutDashboard\\);\")", "Bash(powershell -Command \"\\(Get-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html'\\) -replace 'createIcons\\\\\\(\\\\{icons:lucide\\\\}\\\\\\)', 'createIcons\\({icons:lucide.icons||lucide}\\)' | Set-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html' -Encoding utf8\")", "Bash(node -e \"const lucide = require\\('d:/Project/backend/public/lucide.min.js'\\); const k = Object.keys\\(lucide.icons\\).slice\\(0,5\\); console.log\\('keys:', k\\); const first = lucide.icons[k[0]]; console.log\\('first icon type:', typeof first\\); console.log\\('first icon:', JSON.stringify\\(first\\).slice\\(0,200\\)\\);\")", "Bash(powershell -Command \"\\(Get-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html'\\) -replace 'createIcons\\\\\\(\\\\{icons:lucide\\\\.icons\\\\|\\\\|lucide\\\\}\\\\\\)', 'createIcons\\(\\)' | Set-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html' -Encoding utf8\")", "Bash(powershell -Command \"\\(Get-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html'\\) -replace '', '' | Set-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html' -Encoding utf8\")", "Bash(powershell -Command \"\\(Get-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html'\\) -replace 'if\\\\\\(window\\\\.lucide\\\\\\)lucide\\\\.createIcons\\\\\\(\\\\\\);', 'if\\(window._injectLucide\\)window._injectLucide\\(\\);' | Set-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html' -Encoding utf8\")", "Bash(powershell -Command \"\\(Get-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html'\\) -replace 'setTimeout\\\\\\(\\\\\\(\\\\\\)=>\\\\{if\\\\\\(window\\\\.lucide\\\\\\)lucide\\\\.createIcons\\\\\\(\\\\\\);\\\\},0\\\\\\)', 'setTimeout\\(\\(\\)=>{if\\(window._injectLucide\\)window._injectLucide\\(\\);},0\\)' | Set-Content 'd:\\\\Project\\\\backend\\\\public\\\\index.html' -Encoding utf8\")", "Bash(tasklist)", "Bash(findstr -i node)", "Bash(wmic process *)", "Bash(powershell -Command \"Get-CimInstance Win32_Process -Filter \\\\\"ProcessId=3348\\\\\" | Select-Object CommandLine | Format-List\")", "Bash(taskkill /PID 3348 /F)", "PowerShell(Stop-Process -Id 3348 -Force)", "PowerShell(Get-Process -Id 3348 -ErrorAction SilentlyContinue)", "PowerShell(Start-Process -FilePath \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" -ArgumentList \"server.js\" -WorkingDirectory \"d:\\\\Project\\\\backend\" -WindowStyle Hidden)", "PowerShell(findstr -i node)", "PowerShell(Get-NetTCPConnection -LocalPort 5000 -State Listen | Select-Object -ExpandProperty OwningProcess | ForEach-Object { Get-Process -Id $_ | Select-Object Id, ProcessName, StartTime })", "PowerShell(Get-NetTCPConnection -LocalPort 5000 -State Listen | Select-Object -ExpandProperty OwningProcess | ForEach-Object { Stop-Process -Id $_ -Force }; Start-Sleep -Seconds 1; Start-Process -FilePath \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" -ArgumentList \"server.js\" -WorkingDirectory \"d:\\\\Project\\\\backend\" -WindowStyle Hidden; Start-Sleep -Seconds 3; Get-NetTCPConnection -LocalPort 5000 -State Listen | Select-Object -ExpandProperty OwningProcess)", "Bash(\"/c/Program Files/nodejs/node.exe\" _verify_hsn_num.js)", "Bash(node -c routes/gstr1.js)", "Bash(node -e \"const fs=require\\('fs'\\);const h=fs.readFileSync\\('d:/Project/backend/public/index.html','utf8'\\);const m=h.match\\(/