Commit Graph

  • 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