fix: 4 improvements — campaign test deletion, review queue triggers, technique link, Jira read-only
Some checks failed
Aegis CI / lint-and-test (push) Has been cancelled
Some checks failed
Aegis CI / lint-and-test (push) Has been cancelled
1. Campaign test deletion: removing a test from a campaign now also
deletes the underlying Test record and recalculates technique status.
2. Review Queue triggers: review_required=True is now also set when
- Sigma/Elastic detection rules are imported for a technique
- A test is validated (coverage status changes)
3. Test detail — Technique link: 'Technique' entry added at the top of
the Details sidebar showing MITRE ID + name as a clickable link to
/techniques/{mitre_id}.
4. Jira panel — read-only on test page: added readOnly + label props to
JiraLinkPanel. TestDetailPage now passes readOnly=true and the test
name as label, hiding Link Issue / Sync / Unlink controls (automatic
Jira creation only — no manual management).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -440,6 +440,26 @@ export default function TestDetailPage() {
|
||||
<div className="rounded-xl border border-gray-800 bg-gray-900 p-6">
|
||||
<h2 className="mb-4 text-lg font-semibold text-white">Details</h2>
|
||||
<dl className="space-y-4">
|
||||
{test.technique_mitre_id && (
|
||||
<div>
|
||||
<dt className="text-xs font-medium uppercase text-gray-500">Technique</dt>
|
||||
<dd className="mt-1">
|
||||
<button
|
||||
onClick={() => navigate(`/techniques/${test.technique_mitre_id}`)}
|
||||
className="flex items-start gap-1.5 text-left group"
|
||||
>
|
||||
<span className="font-mono text-xs text-cyan-400 shrink-0 group-hover:underline">
|
||||
{test.technique_mitre_id}
|
||||
</span>
|
||||
{test.technique_name && (
|
||||
<span className="text-xs text-gray-400 group-hover:text-gray-300 transition-colors">
|
||||
\u2014 {test.technique_name}
|
||||
</span>
|
||||
)}
|
||||
</button>
|
||||
</dd>
|
||||
</div>
|
||||
)}
|
||||
<div>
|
||||
<dt className="text-xs font-medium uppercase text-gray-500">Description</dt>
|
||||
<dd className="mt-1">
|
||||
@@ -539,7 +559,7 @@ export default function TestDetailPage() {
|
||||
)}
|
||||
|
||||
{/* Jira Integration */}
|
||||
<JiraLinkPanel entityType="test" entityId={testId!} />
|
||||
<JiraLinkPanel entityType="test" entityId={testId!} readOnly label={test.name} />
|
||||
|
||||
{/* Phase Timeline (read-only, with Tempo sync) */}
|
||||
<TestPhaseTimeline test={test} testId={testId} />
|
||||
|
||||
Reference in New Issue
Block a user