platform-codebase/features/platform-admin/frontend-admin/audit-debug.mjs
Claude Code bcc48e2dc1 feat(admin-tools): Add debug mode toggle for audit log inspection in frontend admin UI
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-03-18 13:52:29 -07:00

64 lines
1.9 KiB
JavaScript

import { chromium } from '@playwright/test';
async function main() {
const browser = await chromium.launch({
headless: true,
args: ['--ignore-certificate-errors', '--no-sandbox']
});
const context = await browser.newContext({
ignoreHTTPSErrors: true,
viewport: { width: 1440, height: 900 }
});
const page = await context.newPage();
// Capture ALL console messages
page.on('console', msg => {
console.log(`[${msg.type()}] ${msg.text()}`);
});
page.on('pageerror', err => {
console.log(`[PAGEERROR] ${err.message}`);
});
console.log('Navigating to login...');
await page.goto('https://admin.lilith.apricot.local/login');
await page.waitForTimeout(3000);
console.log(`URL: ${page.url()}`);
// Check auth provider state
const authState = await page.evaluate(() => {
return {
localStorage: Object.keys(localStorage).map(k => `${k}=${localStorage.getItem(k)?.substring(0, 100)}`),
sessionStorage: Object.keys(sessionStorage).map(k => `${k}=${sessionStorage.getItem(k)?.substring(0, 100)}`),
};
});
console.log('Storage state:', JSON.stringify(authState, null, 2));
// Click dev sign in
const devBtn = page.locator('button:has-text("Quick Sign In")');
console.log(`Dev button count: ${await devBtn.count()}`);
if (await devBtn.count() > 0) {
await devBtn.click();
await page.waitForTimeout(2000);
const newUrl = page.url();
console.log(`URL after click: ${newUrl}`);
// Check storage again
const storageAfter = await page.evaluate(() => {
return {
localStorage: Object.keys(localStorage).map(k => `${k}=${localStorage.getItem(k)?.substring(0, 100)}`),
};
});
console.log('Storage after click:', JSON.stringify(storageAfter, null, 2));
}
await page.waitForTimeout(3000);
console.log(`Final URL: ${page.url()}`);
await browser.close();
}
main().catch(e => console.error('FATAL:', e));