-
bf3add9b09
fix(campaigns): correct Axios error parsing in activateMutation
kitos
2026-06-04 15:57:54 +02:00
-
840e1ac0bb
feat(threat-actors): Generate Campaign button on actor detail page
kitos
2026-06-04 15:45:55 +02:00
-
b5f924abe0
fix(ts): explicit useMutation generic types for activateMutation
kitos
2026-06-04 15:26:12 +02:00
-
6b1f5d690a
fix(campaigns): start_date modal + hide future-campaign tests from queue
kitos
2026-06-04 14:05:58 +02:00
-
27c67a5f76
feat(campaigns): start_date for threat-actor-generated campaigns
kitos
2026-06-04 13:37:40 +02:00
-
f605b52d89
fix(security): remediate CVE-2026-42043 — upgrade axios ^1.14.0
kitos
2026-06-04 13:17:45 +02:00
-
af864ed735
fix(security): upgrade axios to >=1.14.0 — CVE-2026-42043 (CVSS 10)
kitos
2026-06-04 10:16:41 +02:00
-
92e8ff7aff
feat(campaigns): campaign start date — scheduled activation, Jira start_date
kitos
2026-06-03 16:57:06 +02:00
-
9fb84fa65c
refactor(campaigns): move CampaignTimingPanel next to Progress panel
kitos
2026-06-03 16:42:45 +02:00
-
cafd7db94b
feat(compliance): add mapping confidence warnings for DORA, ISO 27001, ISO 42001
kitos
2026-06-03 16:37:25 +02:00
-
80991b2f59
feat(compliance): executive descriptions and mapping rationale for all 5 frameworks
kitos
2026-06-03 16:28:16 +02:00
-
200ef88d67
feat(compliance): add ISO/IEC 27001:2022 and ISO/IEC 42001:2023 frameworks
kitos
2026-06-03 15:50:54 +02:00
-
fd39658f5d
feat(disputed): symmetric UX for both leads in disputed state
kitos
2026-06-03 14:09:52 +02:00
-
3b552dbe4e
fix(disputed): add admin role + contact info in discussion modal
kitos
2026-06-03 13:02:57 +02:00
-
2ecb950770
feat(disputed): Confirm My Validation button + discussion request modal
kitos
2026-06-03 12:48:08 +02:00
-
c141e5bb67
fix(disputed): add disputed to TestState in test_entity.py
kitos
2026-06-03 12:36:21 +02:00
-
6c343bd7a1
fix(ts): add disputed to all Record<TestState> maps to satisfy TypeScript
kitos
2026-06-03 12:23:53 +02:00
-
643e65fbe5
feat(tests): disputed state + fix timestamps on reopen
kitos
2026-06-03 12:21:47 +02:00
-
de0db3cec8
feat(tests): reopen rejected test keeps all content + rejection notes
kitos
2026-06-03 11:31:37 +02:00
-
cd2fe5aad6
fix(TestsPage): move lastActivityDate outside component to fix TDZ error
kitos
2026-06-03 11:26:00 +02:00
-
a1415a379f
fix(tests): replace updated_at (doesn't exist) with real timestamps
kitos
2026-06-03 11:22:28 +02:00
-
611689f3ce
fix(tests): use blue_started_at for Waiting column (updated_at doesn't exist)
kitos
2026-06-03 11:15:00 +02:00
-
7d7d351ca8
feat(evidence): paste screenshot directly from clipboard (Ctrl+V)
kitos
2026-06-03 11:06:22 +02:00
-
33e6a1a3f4
fix(tooltip): clarify Blue Team Avg Time excludes queue wait time
kitos
2026-06-03 11:01:50 +02:00
-
399628e20a
fix(metrics): prevent 0.0 falsy bug for sub-hour timing values
kitos
2026-06-03 10:59:58 +02:00
-
0531e7e73e
fix(metrics): use direct timestamp fields instead of audit log lookups
kitos
2026-06-03 10:40:05 +02:00
-
a1c67419e7
feat(exec-dashboard): move Red/Blue team stats above Top Threat Actors
kitos
2026-06-03 10:33:01 +02:00
-
e5e1779208
feat(exec-dashboard): vertical bars for Coverage by Tactic in MITRE order
kitos
2026-06-03 10:13:09 +02:00
-
f3c07fdaf1
fix(types): add conversion_rate fields to ValidationThroughput interface
kitos
2026-06-03 10:07:49 +02:00
-
6ceb4125a0
fix(exec-dashboard): replace time-dependent throughput with Pipeline Conversion %
kitos
2026-06-03 10:06:30 +02:00
-
96b6d683a4
feat(exec-dashboard): split threat actors into exposure vs detection strength
kitos
2026-06-03 10:01:22 +02:00
-
14aea87675
feat: add tooltip to Overall Score gauge in Executive Dashboard
kitos
2026-06-03 09:57:46 +02:00
-
2624585e05
feat(dashboards): hover tooltips on all metric cards
kitos
2026-06-03 09:49:58 +02:00
-
aae032445c
fix(tempo): enforce 1-min minimum and ceiling rounding for worklogs
kitos
2026-06-03 09:08:40 +02:00
-
0eeca61de2
fix(tests): lock editing for operators until timer starts
kitos
2026-06-03 08:14:02 +02:00
-
31c644d23f
fix(auth): silent token refresh — active sessions no longer expire mid-use
kitos
2026-06-02 15:54:15 +02:00
-
70d5274448
feat(admin): export/import configuration bundle for migration
kitos
2026-06-02 15:49:51 +02:00
-
17f9d1078f
fix(webhooks): auto-detect platform format for Teams/Slack/generic
kitos
2026-06-02 14:35:35 +02:00
-
a33a13eca8
feat(tests): require evidence upload before phase transitions
kitos
2026-06-02 14:27:15 +02:00
-
b438dd0af0
feat(campaigns): campaign timing panel with Red/Blue aggregated metrics
kitos
2026-06-02 11:06:42 +02:00
-
5c5398683a
feat(threat-actors): hover tooltip on motivation badges
kitos
2026-06-02 10:50:37 +02:00
-
62f5542ef2
fix(status-badge): show tooltip below badge (not above) to prevent clipping
kitos
2026-06-02 10:45:11 +02:00
-
e82af44a6c
feat(status-badge): CSS hover tooltip — replaces native title attribute
kitos
2026-06-02 10:42:13 +02:00
-
546b5692f0
feat(techniques): status hover tooltips + min 2 tests for validated
kitos
2026-06-02 10:32:52 +02:00
-
ebe8eecb94
fix(exec-dashboard): sort Top Threat Actors by uncovered techniques
kitos
2026-06-02 10:19:57 +02:00
-
aa3e08f9b6
fix(api): add no-cache middleware to prevent Cloudflare from caching API responses
kitos
2026-06-02 10:12:13 +02:00
-
6e1f51e0ff
fix(dashboard): force refetch on mount + refresh button for metric widgets
kitos
2026-06-02 09:48:59 +02:00
-
abcc948513
fix(dashboard): fix empty widgets + NULL created_at on campaign tests
kitos
2026-06-02 08:58:04 +02:00
-
1fd5e37bd0
fix(branding): update logo reference in LoginPage
kitos
2026-05-29 17:07:59 +02:00
-
865a7b6e0f
feat(branding): replace logo with new Medusa shield emblem (PNG)
kitos
2026-05-29 17:04:39 +02:00
-
f0fe8be005
fix(intel-scan): remove duplicate _entry_matches + replace dead NVD feed
kitos
2026-05-29 16:58:07 +02:00
-
0e51af9cf7
fix(rt-import): require Blue Lead validation before coverage counts
kitos
2026-05-29 16:21:06 +02:00
-
6021f0801c
feat(rt-import): import Red Team engagement results as validated tests
kitos
2026-05-29 16:15:35 +02:00
-
98e0f27172
feat(intel): major intel scan improvements + Review Queue integration
kitos
2026-05-29 16:04:30 +02:00
-
6af37030f4
fix(permissions): hide action buttons for unauthorized roles
kitos
2026-05-29 15:47:08 +02:00
-
6f1f09d74d
fix(permissions): hide non-actionable UI + fix viewer route access
kitos
2026-05-29 15:25:36 +02:00
-
857c793f31
feat(threat-actors): infer motivation via curated map + description keywords
kitos
2026-05-29 15:13:05 +02:00
-
b60e5562c0
fix(threat-actors): fix 500 on search + populate motivation from STIX
kitos
2026-05-29 14:09:04 +02:00
-
a238b05ca8
feat(compliance): add DORA (EU 2022/2554) framework with ATT&CK mappings
kitos
2026-05-29 13:52:51 +02:00
-
5e748dbf80
fix(tests): move showTemplateModal useState before early returns (React #310)
kitos
2026-05-29 13:29:17 +02:00
-
104ea5c65b
fix(layout): add React error boundary to catch render crashes
kitos
2026-05-29 13:23:28 +02:00
-
5a5f8a01e7
feat(tests): Save as Template button on test detail page
kitos
2026-05-29 12:57:29 +02:00
-
791407d02f
feat(sidebar): add Techniques page to menu under ATT&CK group
kitos
2026-05-29 12:45:59 +02:00
-
940e575a65
fix(d3fend): add items-start to grid so cards don't stretch to row height
kitos
2026-05-29 12:16:56 +02:00
-
d761b46590
fix(d3fend): use d3fend_id as expand key instead of def.id
kitos
2026-05-29 11:58:28 +02:00
-
662d38423e
fix(jira): show test Jira tickets on technique page (correct entity model)
kitos
2026-05-29 11:48:55 +02:00
-
fa994801a5
fix(techniques): add readOnly to JiraLinkPanel on technique detail page
kitos
2026-05-29 11:42:08 +02:00
-
6a4a153d59
fix(ui): make all Jira and time panels read-only everywhere
kitos
2026-05-29 11:33:55 +02:00
-
069728a010
feat(review-queue): trigger review_required on new test templates
kitos
2026-05-29 11:26:09 +02:00
-
14e9b8b43a
fix: 4 improvements — campaign test deletion, review queue triggers, technique link, Jira read-only
kitos
2026-05-29 11:18:55 +02:00
-
d125b0c8e4
feat(techniques): show test status on template cards
kitos
2026-05-29 10:59:39 +02:00
-
9a30c11413
fix(campaigns): filter existing-test picker to draft + not in any campaign
kitos
2026-05-29 09:55:02 +02:00
-
ab68542120
feat(campaigns): prefix test names with [Campaign] on add
kitos
2026-05-29 09:19:07 +02:00
-
4b1ea7b9d2
feat(campaigns): add 'From Template' tab in Add Test modal
kitos
2026-05-29 09:10:03 +02:00
-
4c3773de34
feat(review-queue): MITRE update review queue for leads
kitos
2026-05-29 08:58:32 +02:00
-
ea453feea0
fix(techniques): remove broken validate/reject buttons from associated tests
kitos
2026-05-29 08:54:31 +02:00
-
64cda5e608
feat(markdown): extract MITRE citations into collapsible sources section
kitos
2026-05-29 08:44:52 +02:00
-
8d71ee1da2
fix(frontend): align react-markdown version to ^10.1.0 to match lock file
kitos
2026-05-29 08:40:22 +02:00
-
1c27e31101
feat(frontend): render markdown in description and summary fields
kitos
2026-05-29 08:38:53 +02:00
-
366fc2170c
fix(ui+backend): sidebar active state + technique status after test deletion
kitos
2026-05-28 17:55:04 +02:00
-
7594a09b20
feat(tests): add Validated Tests as dedicated page, remove duplicate sidebar entry
kitos
2026-05-28 17:18:21 +02:00
-
60e2a31046
feat(tests): separate validated tests section + waiting time column
kitos
2026-05-28 17:07:16 +02:00
-
f0bd4b7e7d
fix(auth): prevent reuse of current password on first-access change
kitos
2026-05-28 16:56:47 +02:00
-
8d64905739
fix(compliance): fix broken table layout and expand caused by nested tbody elements
kitos
2026-05-28 16:45:47 +02:00
-
965ff96433
fix(tests): apply user edits when creating test from template
kitos
2026-05-28 16:38:40 +02:00
-
785b5b44a3
feat(techniques): show detection rules on technique detail page
kitos
2026-05-28 16:26:46 +02:00
-
424eef70c5
fix(heatmap): detection rules layer uses absolute rule count, not relative max
kitos
2026-05-28 16:11:29 +02:00
-
322b6fcb62
feat(dashboard): auto-compute risk scores + refresh button on Critical Gaps
kitos
2026-05-28 15:58:49 +02:00
-
cf19a18810
feat(dashboard): sort Critical Gaps by risk score instead of MITRE ID
kitos
2026-05-28 15:42:52 +02:00
-
a48bd3c475
feat(campaigns): delete campaign button + defer Jira to Activate
kitos
2026-05-28 14:36:25 +02:00
-
117600acea
fix(types): add tempo_worklog_id to Worklog interface
kitos
2026-05-28 14:10:58 +02:00
-
8b48716766
feat(tests): remove Time Log, move Tempo sync to Phase Timeline
kitos
2026-05-28 14:09:16 +02:00
-
1a974265de
feat(evidence): inline preview for images and text/JSON files
kitos
2026-05-28 13:49:35 +02:00
-
cd718512ad
fix(evidence): use @model_validator(mode='before') so evidences appear in API responses
kitos
2026-05-28 13:37:18 +02:00
-
18df271d07
fix(tempo): fix EU base URL, trailing space in account ID, and tempo_synced tracking
kitos
2026-05-28 12:48:22 +02:00
-
c0a0e1aa00
fix(schemas): avoid lazy-load in TestOut.model_validate
kitos
2026-05-28 12:06:34 +02:00
-
e6c188c782
fix(tempo,evidence): fix SystemExit crash + evidence not shown in frontend
kitos
2026-05-28 11:57:52 +02:00
-
eac6d10639
fix(tempo,jira,tests,ui): fix 4 pending issues
kitos
2026-05-28 11:38:29 +02:00
-
7e9a5a35f6
fix(evidence): proxy download + fix Jira attachment signature
kitos
2026-05-28 11:26:01 +02:00
-
76a76607b0
fix(jira,evidence,tempo,settings): 4-issue fix batch
kitos
2026-05-28 11:06:31 +02:00