Skip to content

Commit d5e1d89

Browse files
Andrew Bakerclaude
andcommitted
feat: CS Monitor Issues — Explain button with step-by-step remediation
Each issue row now shows an Explain button (when a fix is available). Clicking it expands an inline fix panel without navigating away from the Issues tab. Clicking again (or the Close label) collapses it. Fix content covers all current issue types: Security: admin username, db prefix, XML-RPC, readme/license exposure, PHP EOL, WP_DEBUG_DISPLAY, DISALLOW_FILE_EDIT/MODS, failed logins/brute force, author enumeration, plugin updates, HTTPS Performance: autoloaded options, WP-Cron backlog, slow queries, N+1 patterns, object cache hit rate, render-blocking scripts, asset bloat Each fix panel includes: why it matters, numbered steps with inline code snippets, and an advisory note where relevant. Click does not propagate to the row's tab-switch handler. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent bc930bd commit d5e1d89

File tree

2 files changed

+328
-1
lines changed

2 files changed

+328
-1
lines changed

assets/cs-perf-monitor.css

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1273,6 +1273,78 @@ td.c-n { color: #555; font-size: 10px; text-align: right; padding-right: 6px; }
12731273
text-overflow: ellipsis;
12741274
}
12751275

1276+
/* ── Explain / fix panel ─────────────────────────────────────────────────── */
1277+
.cs-fix-btn {
1278+
flex-shrink: 0;
1279+
padding: 1px 7px;
1280+
font-size: 10px;
1281+
font-weight: 600;
1282+
background: #2a2d2e;
1283+
color: #9cdcfe;
1284+
border: 1px solid #3a3d3e;
1285+
border-radius: 3px;
1286+
cursor: pointer;
1287+
letter-spacing: .02em;
1288+
line-height: 16px;
1289+
transition: background .1s, color .1s;
1290+
}
1291+
.cs-fix-btn:hover { background: #3a3d3e; color: #fff; }
1292+
.cs-fix-btn-active { background: #1e3a4a; color: #4ec9b0; border-color: #4ec9b0; }
1293+
1294+
.cs-fix-wrap {
1295+
display: none;
1296+
margin: 6px 0 2px;
1297+
}
1298+
.cs-fix-wrap.cs-fix-open { display: block; }
1299+
1300+
.cs-fix-panel {
1301+
background: #161616;
1302+
border: 1px solid #2a2a2a;
1303+
border-radius: 4px;
1304+
padding: 10px 12px;
1305+
font-size: 11px;
1306+
}
1307+
.cs-fix-why {
1308+
color: #9e9e9e;
1309+
font-style: italic;
1310+
margin-bottom: 8px;
1311+
line-height: 1.5;
1312+
border-left: 2px solid #3a3d3e;
1313+
padding-left: 8px;
1314+
}
1315+
.cs-fix-steps {
1316+
margin: 0;
1317+
padding-left: 20px;
1318+
counter-reset: fix-step;
1319+
}
1320+
.cs-fix-steps li {
1321+
color: #d4d4d4;
1322+
line-height: 1.55;
1323+
margin-bottom: 5px;
1324+
list-style-type: decimal;
1325+
}
1326+
.cs-fix-steps li:last-child { margin-bottom: 0; }
1327+
.cs-fix-steps code {
1328+
font-family: 'Consolas', 'Monaco', monospace;
1329+
font-size: 10.5px;
1330+
background: #252526;
1331+
color: #ce9178;
1332+
padding: 1px 4px;
1333+
border-radius: 2px;
1334+
white-space: nowrap;
1335+
}
1336+
.cs-fix-steps b { color: #e6c949; font-weight: 600; }
1337+
.cs-fix-note {
1338+
margin-top: 8px;
1339+
padding: 5px 8px;
1340+
background: #1e2a1e;
1341+
border-left: 2px solid #4ec9b0;
1342+
color: #888;
1343+
font-size: 10px;
1344+
line-height: 1.5;
1345+
border-radius: 0 3px 3px 0;
1346+
}
1347+
12761348
/* ── Request tab ─────────────────────────────────────────────────────────── */
12771349
.cs-request-wrap { padding: 0; }
12781350
.cs-req-body { padding: 8px 10px 16px; }

0 commit comments

Comments
 (0)