#!/usr/bin/env bash
set -euo pipefail

RUN_ID="${PENTEST_RUN_ID:-manual}"
ARTIFACT_DIR="${PENTEST_ARTIFACT_DIR:-.paqad/pentest/runs/${RUN_ID}/artifacts}"
DB_DIR="${ARTIFACT_DIR}/database"
mkdir -p "${DB_DIR}"

if [ -f ".env" ] && command -v node >/dev/null 2>&1; then
  node - <<'NODE' > "${DB_DIR}/db-readonly.json"
const fs = require('fs');
const env = fs.readFileSync('.env', 'utf8');
const match = (name) => {
  const found = env.match(new RegExp(`(?:^|\\n)\\s*${name}\\s*=\\s*["']?([^\\n"']+)["']?`, 'i'));
  return found ? found[1].trim() : null;
};
const connection = match('DB_CONNECTION');
const database = match('DB_DATABASE');
console.log(JSON.stringify({
  connection,
  database,
  detail: connection ? 'Database configuration detected for readonly follow-up.' : 'No local DB configuration detected.',
}, null, 2));
NODE
else
  node - <<'NODE' > "${DB_DIR}/db-readonly.json"
console.log(JSON.stringify({
  connection: null,
  database: null,
  detail: 'Database inspection unavailable.',
}, null, 2));
NODE
fi

echo "database readonly inspection complete"
