Initial miaojingAI project with image resolution guard
This commit is contained in:
53
inspect_gallery_user_links.js
Normal file
53
inspect_gallery_user_links.js
Normal file
@@ -0,0 +1,53 @@
|
||||
const { Pool } = require('pg');
|
||||
require('dotenv').config({ path: '.env.local' });
|
||||
|
||||
(async () => {
|
||||
const pool = new Pool({ connectionString: process.env.LOCAL_DB_URL });
|
||||
const client = await pool.connect();
|
||||
try {
|
||||
const summary = await client.query(`
|
||||
SELECT
|
||||
COUNT(*)::int AS total,
|
||||
COUNT(*) FILTER (WHERE w.user_id IS NULL)::int AS null_user_id,
|
||||
COUNT(*) FILTER (WHERE p.id IS NULL)::int AS missing_profile,
|
||||
COUNT(*) FILTER (WHERE p.id IS NOT NULL)::int AS linked_profile
|
||||
FROM works w
|
||||
LEFT JOIN profiles p ON p.id = w.user_id
|
||||
WHERE w.is_public = true AND w.status = 'completed'
|
||||
`);
|
||||
|
||||
const samples = await client.query(`
|
||||
SELECT
|
||||
w.id,
|
||||
w.user_id,
|
||||
w.title,
|
||||
LEFT(COALESCE(w.prompt, ''), 80) AS prompt_preview,
|
||||
w.params,
|
||||
w.created_at
|
||||
FROM works w
|
||||
LEFT JOIN profiles p ON p.id = w.user_id
|
||||
WHERE w.is_public = true AND w.status = 'completed' AND p.id IS NULL
|
||||
ORDER BY w.created_at DESC
|
||||
LIMIT 20
|
||||
`);
|
||||
|
||||
const profileSamples = await client.query(`
|
||||
SELECT id, email, nickname, role, created_at
|
||||
FROM profiles
|
||||
ORDER BY created_at DESC
|
||||
LIMIT 20
|
||||
`);
|
||||
|
||||
console.log(JSON.stringify({
|
||||
summary: summary.rows[0],
|
||||
missingSamples: samples.rows,
|
||||
profileSamples: profileSamples.rows,
|
||||
}, null, 2));
|
||||
} finally {
|
||||
client.release();
|
||||
await pool.end();
|
||||
}
|
||||
})().catch((error) => {
|
||||
console.error(error);
|
||||
process.exit(1);
|
||||
});
|
||||
Reference in New Issue
Block a user