Commit graph

  • c155f56151 feat(infra): add Bitwarden Secrets Manager injection for container secrets master lorentz 2026-08-05 23:33:19 -04:00
  • 979554d4dc docs(phase-24): mark 24-07 plan complete in ROADMAP (7/7) lorentz 2026-08-05 23:19:29 -04:00
  • 820e5c584b fix(state): correct STATE.md progress totals after tool bug lorentz 2026-08-05 23:19:13 -04:00
  • 3465192ab5 docs(24): mark code review findings fixed (commit e057255) lorentz 2026-08-05 23:17:43 -04:00
  • e057255f4f fix(24): address code-review findings — PATCH identity guard, empty-array tombstone, health-check timeout, record-key normalization lorentz 2026-08-05 23:15:08 -04:00
  • 52afdca8a1 docs(24-07): resolve live end-to-end checkpoint — all 9 steps passed lorentz 2026-08-05 22:55:27 -04:00
  • 4da5664184 fix(24-05): quote TXT record values per RFC 1035 character-string format lorentz 2026-08-05 21:08:51 -04:00
  • b9d5a4823f chore: merge executor worktree (worktree-agent-ad21740c19f57464b) — plan 24-07 lorentz 2026-08-05 20:54:43 -04:00
  • 31eb5e0321 docs(24-07): partial plan summary — Tasks 1-2 complete, Task 3 checkpoint pending lorentz 2026-08-05 20:54:14 -04:00
  • fadfcb8345 feat(24-07): record editor dialog with create, edit, and immediate delete lorentz 2026-08-05 20:52:34 -04:00
  • b3048be769 feat(24-07): zones, records, and history page shell for /admin/sync/route53 lorentz 2026-08-05 20:52:25 -04:00
  • 493d6daf6c docs(phase-24): update tracking after wave 3 (plans 24-05, 24-06 complete) lorentz 2026-08-05 20:39:58 -04:00
  • c47de2a91c chore: merge executor worktree (worktree-agent-a8fd5f9961335cf8d) — plan 24-05 lorentz 2026-08-05 20:38:35 -04:00
  • 78e534cafc chore: merge executor worktree (worktree-agent-a09d891460d61dc86) — plan 24-06 lorentz 2026-08-05 20:38:35 -04:00
  • 5e1b8aae75 docs(24-05): add plan summary lorentz 2026-08-05 20:37:55 -04:00
  • a7d6a04110 feat(24-05): CRUD write routes with pending/committed/failed audit lifecycle lorentz 2026-08-05 20:36:54 -04:00
  • 53ec51c5e0 feat(24-05): read routes for zones, records, history, and sync status lorentz 2026-08-05 20:33:58 -04:00
  • 82408733a4 docs(24-06): append self-check results to plan summary lorentz 2026-08-05 20:33:26 -04:00
  • 8fcf587a30 docs(24-06): create plan summary lorentz 2026-08-05 20:33:08 -04:00
  • f4e151dedd feat(24-05): implement route53-change-submit (ChangeBatch, retry, bounded poll) lorentz 2026-08-05 20:31:43 -04:00
  • 6627cee925 feat(24-06): add Route 53 tile to /admin/sync integration list lorentz 2026-08-05 20:31:26 -04:00
  • fee1f9962b feat(24-06): wire route53-incremental/route53-full into sync scheduler lorentz 2026-08-05 20:30:52 -04:00
  • 9a9e691cd4 test(24-05): add failing test for route53-change-submit lorentz 2026-08-05 20:29:57 -04:00
  • 2b009573c4 docs(phase-24): update tracking after wave 2 (plans 24-02, 24-03, 24-04 complete) lorentz 2026-08-05 20:27:11 -04:00
  • e727ddca77 refactor(24): consolidate duplicate sanitizeAwsError into single source lorentz 2026-08-05 20:27:01 -04:00
  • d00c47ecb1 chore: merge executor worktree (worktree-agent-a30d26dba3410e0da) — plan 24-04 lorentz 2026-08-05 20:26:13 -04:00
  • 2dbb1e13e2 chore: merge executor worktree (worktree-agent-ab77d007f6dbb3578) — plan 24-03 lorentz 2026-08-05 20:26:13 -04:00
  • d7f72f8507 chore: merge executor worktree (worktree-agent-a6d587bad9f0efdb8) — plan 24-02 lorentz 2026-08-05 20:26:13 -04:00
  • 416abe98a0 docs(24-04): create plan summary lorentz 2026-08-05 20:25:33 -04:00
  • ea04672e5b feat(24-04): register checkRoute53() in the integration health aggregator lorentz 2026-08-05 20:24:36 -04:00
  • 6df084cb98 docs(24-02): create plan summary lorentz 2026-08-05 20:24:18 -04:00
  • 3d2680c47f docs(24-03): add plan summary lorentz 2026-08-05 20:23:24 -04:00
  • 0acf1fa24f test(24-02): cover buildDriftHistoryRows update/delete/create/no-change cases lorentz 2026-08-05 20:23:16 -04:00
  • d8c0912f4b feat(24-02): add Route53SyncService — zones and records mirror sync lorentz 2026-08-05 20:22:34 -04:00
  • 8b5e926bb1 feat(24-03): add Route 53 audit lifecycle and pulse_crud history persistence lorentz 2026-08-05 20:22:24 -04:00
  • 06ebae5a5c feat(24-04): implement NS normalization and delegation-comparison module lorentz 2026-08-05 20:21:30 -04:00
  • c18271dda9 test(24-02): add Route 53 record-key, normalization, and drift-classification helpers lorentz 2026-08-05 20:21:05 -04:00
  • 4be4a191a5 feat(24-03): add D-01 record-write validator and AWS error sanitizer lorentz 2026-08-05 20:20:46 -04:00
  • 7396f07f2e test(24-04): add failing test for NS normalization and delegation comparison lorentz 2026-08-05 20:20:41 -04:00
  • ecd4dabd67 docs(phase-24): update tracking after wave 1 (plan 24-01 complete) lorentz 2026-08-05 20:17:42 -04:00
  • 2eb6c2884c chore: merge executor worktree (worktree-agent-aa690b9b15c5b0f8e) — plan 24-01 lorentz 2026-08-05 20:16:56 -04:00
  • b81ad3ecc2 docs(24-01): resolve checkpoint — BWS key rename confirmed, DNS egress OK lorentz 2026-08-05 20:16:45 -04:00
  • 97ec5722b1 docs(24-01): create partial SUMMARY, checkpoint pending lorentz 2026-08-05 19:26:46 -04:00
  • fadae68fe4 docs(24-01): log pre-existing itglue-search test failures as out-of-scope lorentz 2026-08-05 19:25:39 -04:00
  • 210f84d343 feat(24-01): implement Route 53 credential factory lorentz 2026-08-05 19:25:36 -04:00
  • 4dd9d5dab8 test(24-01): add failing test for Route 53 credential factory lorentz 2026-08-05 19:24:28 -04:00
  • b9df27b656 feat(24-01): install AWS Route 53 SDK and create dedicated schema migration lorentz 2026-08-05 19:23:43 -04:00
  • 602c3bb7b5 docs(24): create phase plan lorentz 2026-08-05 19:18:13 -04:00
  • 0eab4996e9 docs(24): add pattern map lorentz 2026-08-05 19:18:00 -04:00
  • 998c4b1a36 docs(24): research phase domain for AWS Route 53 DNS sync lorentz 2026-08-05 19:17:59 -04:00
  • 52affe348c docs(24): cite D-02/D-05/D-08/D-09 in plan must_haves lorentz 2026-08-05 19:17:35 -04:00
  • 15e52280b5 docs(24): create phase plan — 7 plans in 4 waves for AWS Route 53 DNS sync lorentz 2026-08-05 19:09:15 -04:00
  • 6ad27fcbb6 docs(phase-24): add validation strategy lorentz 2026-08-05 18:46:43 -04:00
  • e289f2d24f docs(state): record phase 24 context session lorentz 2026-08-05 18:31:11 -04:00
  • 0805e387e3 docs(24): capture phase context lorentz 2026-08-05 18:31:06 -04:00
  • 5f308f836f fix(phishing-recipient-seubert): scope campaign grouping Tier 3 to company, not reporting contact lorentz 2026-07-22 12:34:33 -04:00
  • e9478101a3 docs(quick-260721-n49): fix classifier to resolve per-company Mimecast tenant instead of the global tenant lorentz 2026-07-21 16:48:11 -04:00
  • 1cd0d4db48 chore: merge quick task worktree (worktree-agent-a498794d9a221b8b7) lorentz 2026-07-21 16:47:36 -04:00
  • 9f12cd610a test(260721-n49): cover tenant-scoped vs global-fallback getBlastRadius branches lorentz 2026-07-21 16:45:44 -04:00
  • 9f75f2160c fix(260721-n49): resolve per-company Mimecast tenant in gatherCampaignEvidence lorentz 2026-07-21 16:44:44 -04:00
  • f58856e103 docs(260721-n49): pre-dispatch plan for fix classifier Mimecast tenant resolution lorentz 2026-07-21 16:41:14 -04:00
  • 3e9c7633d1 docs(quick-260721-mmf): fix Mimecast blast-radius query so it reflects the true blast radius across all recipients, not just the single reporter lorentz 2026-07-21 16:26:57 -04:00
  • 534eda3c40 test(260721-mmf): assert tenant-wide fan-out and multi-recipient blast radius lorentz 2026-07-21 16:25:39 -04:00
  • 58202e0dee fix(260721-mmf): broaden Mimecast blast-radius fan-out to whole tenant lorentz 2026-07-21 16:25:08 -04:00
  • f50b8a3a9b docs(260721-mmf): pre-dispatch plan for fix Mimecast blast-radius query scope lorentz 2026-07-21 16:19:31 -04:00
  • 6eafaae40a docs(quick-260721-fy8): fix mimecast and qbo sync scheduler dispatch and reschedule mimecast cron lorentz 2026-07-21 11:39:52 -04:00
  • db7db98374 chore: merge quick task worktree (worktree-agent-aed3ab3e5ca2a6fb2) lorentz 2026-07-21 11:38:55 -04:00
  • f447ac33c0 fix(quick-260721-fy8): reschedule mimecast-sync off the 2am cron collision lorentz 2026-07-21 11:36:56 -04:00
  • 9311f1044b fix(quick-260721-fy8): add mimecast-sync and qbo dispatch branches to scheduler lorentz 2026-07-21 11:36:16 -04:00
  • d41d6e7c0b docs(260721-fy8): pre-dispatch plan for fix mimecast and qbo sync scheduler dispatch and reschedule mimecast cron lorentz 2026-07-21 11:33:33 -04:00
  • a0d01cfe8b docs(v3.0): add LLM-context companion doc for phishing triage feature lorentz 2026-07-18 11:22:09 -04:00
  • f0c09927f4 docs(v3.0): generate milestone summary for onboarding lorentz 2026-07-18 11:20:31 -04:00
  • a65b29055c docs(quick-260718-9qg): complete QBO integration handoff quick task lorentz 2026-07-18 07:08:29 -04:00
  • ea8a36b394 docs(quick-260718-9qg): add self-contained QBO integration handoff document lorentz 2026-07-18 07:07:26 -04:00
  • 672f17b7f9 chore: check in pending work — queue preferences, QBO AR diagnostics, mobile engagement fixes, ops scripts lorentz 2026-07-18 06:34:57 -04:00
  • b638189cb0 docs: document get-hold-message-list endpoint and its held-queue filtering gotcha lorentz 2026-07-18 06:10:59 -04:00
  • 5b09dbff96 fix: tighten Headers tab grid layout and wrap long values instead of overflowing the card lorentz 2026-07-18 06:04:37 -04:00
  • a30d72e9ba docs(quick-260718-7v8): Fix Mimecast blast-radius held-message false-positive fix lorentz 2026-07-18 05:48:23 -04:00
  • b7d6be47c6 chore: merge quick task worktree (worktree-agent-a45f7294477ed0d95) lorentz 2026-07-18 05:47:50 -04:00
  • 67ee680105 test(quick-260718-7v8): cover held-message date-scoping and sender-relevance guard lorentz 2026-07-18 05:46:22 -04:00
  • 94f7dad29c fix(quick-260718-7v8): date-scope held-message lookup + sender-relevance guard lorentz 2026-07-18 05:44:56 -04:00
  • 36f4d418d0 docs(260718-7v8): pre-dispatch plan for Mimecast blast-radius held-message fix lorentz 2026-07-18 05:42:27 -04:00
  • 4a77b0544c docs(quick-260717-v6c): Add Mark as accidental report action to phishing Action Area lorentz 2026-07-17 22:37:25 -04:00
  • 565a0c1ee2 chore: merge quick task worktree (worktree-agent-a3ab410880ddc437a) lorentz 2026-07-17 22:36:29 -04:00
  • 0d6cd25008 test(260717-v6c): mirror test coverage for accidental-report service functions lorentz 2026-07-17 22:35:04 -04:00
  • 74e43e23c4 feat(260717-v6c): add Mark as accidental report button, dialog, and timeline case lorentz 2026-07-17 22:34:09 -04:00
  • 97804f2e5b feat(260717-v6c): add POST /api/phishing/campaigns/[id]/mark-accidental-report route lorentz 2026-07-17 22:33:09 -04:00
  • aea4fd2f0c feat(260717-v6c): add markCampaignAccidentalReport + generateAndPostAccidentalReportNote lorentz 2026-07-17 22:32:45 -04:00
  • 2b48dc0c10 docs(260717-v6c): pre-dispatch plan for Mark as accidental report action lorentz 2026-07-17 22:30:37 -04:00
  • ec6c5d05e6 fix: convert 0-1 scale confidence to percent in timeline-card (same bug as classification-card, missed in 260716-pgr) lorentz 2026-07-17 22:24:02 -04:00
  • 952b63c8a4 fix: show pre-forward auth verdict (authResultsOriginal) instead of misleading post-forward SPF/DKIM/DMARC in evidence card lorentz 2026-07-17 21:00:25 -04:00
  • cff57a414e fix: update USER_AWARENESS acknowledgment note copy lorentz 2026-07-17 10:51:12 -04:00
  • 90a1b684c9 docs: fix commit hash reference in quick task 260717-a19 STATE.md row lorentz 2026-07-17 07:27:14 -04:00
  • 266fc19153 docs(quick-260717-a19): phishing allowlist/timing/idempotency fixes + Seubert reclassification lorentz 2026-07-17 07:27:02 -04:00
  • c2a64fab9a chore: merge quick task worktree (worktree-agent-ac1a694d510841c38) lorentz 2026-07-17 07:25:24 -04:00
  • 78bb30aabc chore(quick-260717-a19): add one-off reclassify script for 6 Seubert campaigns lorentz 2026-07-17 07:21:43 -04:00
  • cf04f07c58 feat(quick-260717-a19): add idempotency guard + retry-parse on ticket.update lorentz 2026-07-17 07:20:48 -04:00
  • 204276c88a feat(quick-260717-a19): add 3 confirmed KnowBe4 domains to sim allowlist lorentz 2026-07-17 07:19:18 -04:00
  • 075c4bbd24 chore: remove REQUIREMENTS.md for v3.0 milestone lorentz 2026-07-17 06:58:12 -04:00
  • e5d42bda88 docs: update retrospective for v3.0 lorentz 2026-07-17 06:57:43 -04:00