Memory Console

Kodee's persistent memory system — survives across sessions

50

Total Memories

0

Active Projects

40

Known Issues

9

Architecture

50

Wayne KB

Aiden Intelligence Pipeline

Feed Aiden your 3-layer intelligence stack: Market Sentiment, Macro Fundamentals, and Technical Analysis.

Platform Memory (50)

NEVER report QoQ on the calendar

Wayne Principle
critical

Wayne rule: QoQ and annualized-quarterly (e.g. "GDP Annualized") releases must never appear on the economic calendar or feed indicator series. Enforced in shared/economicEventGuard.ts (isQoQ) and updateIndicatorsFromEvents. Only YoY, MoM and level series.

calendarqoqgdp

2026-09-27

askAidenDirect FABRICATES platform internals — never trust it for architecture facts

Known Issue
high

Confirmed 2026-09-22. Asked Aiden about the YouTube playlist state. It answered confidently and almost entirely falsely, inventing components that do not exist anywhere in this app: 'google_oauth_token' / OAuth refresh cycle for YouTube -> we use NO YouTube OAuth and NO API key 'playlist_sync_service' returning 401 -> no such service 'PlatformMetadata' entity, playlist id 'PL-XXXX-TRADARS-DBR' -> no such entity, no such id 'WebinarEntity' / 'CoachSessionEntity' tables -> real names are Webinar / Coach 'updatePlaylistID(string_id)' function -> does not exist '14 records with null youtube_playlist_id' -> the real figure was 137 It also invented a causal chain and an action item (re-authenticate Google) that would have wasted Wayne's time on a non-existent problem. RULE: Aiden is for MARKET commentary. For platform architecture, entity state, or counts, query the database or read the source. Verify every Aiden claim about internals before repeating it to Wayne or acting on it. This is the 'Ask Aiden returns generic LLM responses instead of specialised intelligence' defect showing up as confident hallucination — the underlying cause is that askAidenDirect is not grounded in the app's real schema or PlatformMemory.

aidenhallucinationaskAidenDirectverificationdo-not-forget

2026-09-22

Recordings read the YouTube PLAYLIST PAGE, not RSS — and unlisted needs NO API key

Architecture
critical

Verified 2026-09-22. Do not re-derive this, and do not ask Wayne for a YOUTUBE_API_KEY — he already rejected that request once and was right to. PROVEN: playlist RSS DOES carry unlisted videos. The newest Forex Today playlist entries (through 2026-09-22) are absent from the CHANNEL feed (i.e. they are unlisted) yet present in the PLAYLIST feed. So 'unlisted is invisible to RSS' is FALSE — that claim was my error, made twice. THE REAL DEFECT: playlist RSS indexes some playlists only partially. PL_-A2RRpXwDRdwTnpfoPIkdDJgvLrrHPW (Daily Market Debriefing) -> playlist holds 48 videos, RSS returned only 2 (the 2 with odd titles: Jackson Hole, Squawk Box). Every daily debriefing was missing. PLWFQIqruWAwA (2026 - Live Webinar Recordings) -> RSS returns 15 fine. Same channel, same visibility, different behaviour. Per-playlist flakiness of a legacy endpoint. FIX SHIPPED in fetchPlaylistVideos: primary source is the playlist WATCH PAGE (https://www.youtube.com/playlist?list=<id>), which lists the full playlist including unlisted. RSS is retained as fallback + the only source of exact timestamps. PARSING (YouTube now serves lockupViewModel, NOT playlistVideoRenderer — that older regex matches nothing): ids -> "contentId":"<11 chars>" (repeats per entry; dedupe) titles -> "lockupMetadataViewModel":{"title":{"content":"..."} ages -> "content":"...ago" e.g. 'Streamed 6d ago' All three arrays come back equal-length and in playlist order (48/48/48), so they zip by index. Playlist order is already newest-first — preserve it, do NOT re-sort by date or the 2 RSS-dated items jump to the top. DATES: the page gives only relative ages. Return them verbatim as `age`; populate `published` only from RSS. Never convert a relative age into a precise timestamp — that invents a time the source never stated. UI shows exact stamp when present, else the age string. DO NOT fetch per-video watch pages for dates: YouTube returns HTTP 429 to this backend after a few requests, and the variant it serves omits "uploadDate" anyway.

youtuberecordingsplaylistunlistedrsscorrection

2026-09-22

YouTube playlist IDs: PLWFQIqruWAwA = 2026 live recordings (CURRENT), PLOH53... = 2025 archive

Architecture
critical

CORRECTION to earlier assumption that the recording pipeline was dead. It is NOT dead — Wayne live streams daily and recordings land correctly in the playlist. Verified 2026-09-17 by reading the playlist RSS feed titles: PLWFQIqruWAwA -> feed title "2026 - Live Webinar Recordings" <-- CURRENT, this is where daily streams go PLOH53SPS59Lytj_jyXO05FZYzM7CKNH4i -> feed title "2025" <-- LAST YEAR'S ARCHIVE, do not display Note PLWFQIqruWAwA is only 13 chars. Short playlist IDs are VALID — do not dismiss it as truncated/bogus. It is also the default in fetchPlaylistVideos. 101 of 238 Webinar records already carry youtube_playlist_id = PLWFQIqruWAwA (all the 'Forex Today' series) and are correct. The bug was purely in the dashboard, which had the 2025 archive ID hardcoded, so it displayed content that ended in May. FIXED in src/pages/MarketRadar.jsx: now calls fetchPlaylistVideos({playlistId: PLWFQIqruWAwA}) instead of fetchLatestYoutubeVideo (channel feed), sorts by published desc, and the fallback embed/button point at the 2026 playlist. REMAINING GAP: 'Daily Market Debriefing' webinars have youtube_playlist_id = null — they need their own playlist ID assigned. Coach.youtube_playlist_id is null on all 12 coach records. CAVEAT: playlist RSS returns only ~15 entries in playlist order, not date order — always sort by published before taking 'latest'.

youtubeplaylistsrecordingstraining-centerdo-not-forgetcorrected

2026-09-17

Hermes sync does NOT capture builder conversations — only PlatformMemory + WayneKB snapshots

Known Issue
critical

Confirmed by reading aidenMemorySync 2026-09-17. The hourly 'Hourly Memory Sync to Hermes' workflow calls action=pushToAiden, which reads ONLY: - PlatformMemory (status active, latest 50) - WayneKnowledgeBase (latest 30) and POSTs them as a single concatenated string to HERMES_URL/api/addInsight as category 'platform_sync'. It does NOT record chat/builder conversations. Nothing discussed in a session reaches Hermes unless it was explicitly written into PlatformMemory or WayneKnowledgeBase first. Operational details agreed verbally in chat are lost at session end. CONSEQUENCE: established architecture (e.g. the YouTube playlist design) gets re-derived incorrectly in later sessions. Mitigation: write architecture decisions to PlatformMemory during the session, not after.

hermesmemoryaidenconversation-lossarchitecture

2026-09-17

Webinar recordings use YouTube PLAYLISTS, not channel feed or Whereby sync

Architecture
critical

CORRECTION — do not re-derive this. Recordings are served from YouTube playlists. Coach.youtube_playlist_id and Webinar.youtube_playlist_id hold the playlist per coach/series; streams are auto-added by YouTube. The correct fetcher is the existing backend function fetchPlaylistVideos({playlistId}), which reads https://www.youtube.com/feeds/videos.xml?playlist_id=<ID>. This needs NO YouTube Data API key and NO OAuth — verified working 2026-09-17, returned 15 videos. CRITICAL DISTINCTION: the PLAYLIST rss feed includes unlisted videos that have been added to the playlist. The CHANNEL feed (used by fetchLatestYoutubeVideo) only lists public uploads, which is why it cannot see the unlisted daily debriefings. Never suggest a YouTube Data API key as the fix for unlisted videos — use the playlist feed.

youtubeplaylistsrecordingstraining-centerarchitecturedo-not-forget

2026-09-17

All Coach.youtube_playlist_id fields are NULL — playlist routing cannot work

Known Issue
critical

Verified 2026-09-17: all 12 Coach records (Wayne, Bryan, Mayda, David Pegler, Peter Ward) have youtube_playlist_id = null. The playlist architecture is correct but entirely unpopulated, so no per-coach recording lookup can resolve. Separately, there are 12 Coach records for 7 real people — duplicates need merging. The only playlist ID in use is hardcoded in MarketRadar.jsx: PLOH53SPS59Lytj_jyXO05FZYzM7CKNH4i. Its newest video is 2026-05-28. CONVERGENT DATE: Recording entity last row 2026-05-25, Whereby sync last wrote 2026-05-29, channel feed newest 2026-05-28, playlist newest 2026-05-28. Everything stopped that same week — this points to one upstream cause (streams no longer being added to playlists), not four separate bugs.

youtubeplaylistscoachrecordingsstale-datamay-2026-cutoff

2026-09-17

PLAYBOOK: Special Event Registration + Email Flow (reusable for any event)

Architecture
high

Reusable end-to-end playbook, proven on 'Trade the FED Live' (fed-sep-2026, Sep 16 2026, 1:00-3:30 PM ET). === THE 6 MOVING PARTS === 1. src/components/fed/fedEventConfig.js — SINGLE SOURCE OF TRUTH. event_key, title, start/end (UTC), dateLabel, timeLabel, thumbnail, agenda. Change this first for a new event. 2. src/pages/FedLanding.jsx — public landing page at /fed (and /fed/* so nothing falls through to the login-gated platform). Loads broker branding by hostname, finds the Webinar record, tracks unique visits, renders background image + registration form. 3. src/components/fed/FedRegistrationForm.jsx — ONE STEP, EMAIL ONLY. No agenda, no login step. Logo at 300px. On success shows confirmation + link to /training. Never links straight into the live room. 4. base44/functions/registerFedEvent/entry.ts — the write path. Dedupes on (event_key + email); creates EventRegistration, ensures a free-tier Customer, creates WebinarRSVP + increments Webinar.rsvp_count, then sends the confirmation email. Repeat submits only patch full_name / attended. 5. base44/shared/fedConfirmationEmail.ts — shared email builder used by BOTH the live send and the preview. Broker logo, colors, thumbnail, when/where, 'GO TO TRAINING CENTER →' button. 6. base44/functions/fedEventEmail/entry.ts — the campaign emails. Types: cancel_8am, promo, reminder, confirmation (confirmation is preview-only, forced dry_run, never blasted). Sends via sendBrokerCampaign so every send is white-labelled, open-tracked and click-tracked. Plus: src/pages/FedEmailReview.jsx at /fed-email-review — tab per email type, dry-run preview, sends nothing. Plus: two workflows — cancellation email 8:00 AM ET, 'log in now' reminder 12:45 PM ET. === RULES THAT MUST HOLD === - Every CTA points at the REGISTRATION page (/fed), never the room URL. - Registrants are redirected to /training to log in, not into the room. - Broker URL = custom_domain if set, else <slug>.tradars.com, else analytics.tradars.com. Never app.tradars.com. - CTA text in white-labelled emails: 'JOIN US HERE →'. - No trade-execution or speculative language in any copy. - Partner-exclusive sessions filter recipients by broker_slug. - No automated email goes out without Wayne's explicit approval. === STEPS TO CLONE FOR A NEW EVENT === 1. Update fedEventConfig.js (new event_key — e.g. fed-dec-2026 — title, dates, labels, agenda). 2. Generate a 1280x720 thumbnail: real Wayne McDonell headshot, timestamp overlay ('LIVE TODAY · 1PM ET'), no CTA text baked in. 3. Create/point the Webinar record and confirm the stream key + room. 4. Refresh the live-data block and subject lines in fedEventEmail (rate odds, DXY, 10Y, gold, etc.). 5. Re-point the two workflow schedules to the new date/times. 6. Preview all four email types at /fed-email-review. 7. Run the test sequence below, then delete the test rows. === TEST SEQUENCE (verified working Sep 16 2026) === a) registerFedEvent with {event_key, email, full_name, broker_slug, source:'end_to_end_test'} → success, already_registered:false, count increments. b) Same email again with mark_attended:true → already_registered:true, same registration_id, attendance flips (no duplicate row, no second email). c) Register with NO broker_slug → TRADARS default branding path. d) fedEventEmail dry_run for cancel_8am / promo / reminder / confirmation → check subject, preview text, CTA URL and rendered HTML per broker. e) Read EventRegistration by event_key to confirm the rows, then delete by source:'end_to_end_test' and remove any test Customer. NOTE: emails triggered from the builder are CAPTURED, not delivered. To see a real inbox delivery, register on the live /fed page.

playbookspecial_eventregistrationemailfedfomcwhite_labelreusable

2026-09-16

Webinar Thumbnail Best Practices (TRADARS Standard)

Architecture
high

STANDARD FOR ALL WEBINAR / EVENT THUMBNAILS. 1. WAYNE'S REAL PHOTOS ARE MANDATORY — never AI-invent a presenter face. Always pass Wayne's real headshots as reference images to GenerateImage and instruct: 'preserve his real face, grey hair, black rectangular eyeglasses and likeness precisely; this is a photo composite of that specific person, not a new person.' WAYNE MCDONELL HEADSHOT LIBRARY (canonical, reuse these): - Grey suit / navy tie, black background: https://media.base44.com/images/public/69c59943a9e546455164fc31/6e392c34a_032-rCbfndI6L801.jpeg - Navy suit, hands in pockets, grey backdrop: https://media.base44.com/images/public/69c59943a9e546455164fc31/67e42d154_077-lecYHs5w1Sk1.jpeg - Primary headshot: https://media.base44.com/images/public/69c59943a9e546455164fc31/ae16f8568_waynemcdonell1.jpeg - Black sweater, arms folded, library: https://media.base44.com/images/public/69c59943a9e546455164fc31/220d6b050_056-h1AYQ6hAjwM1.jpeg - Navy blazer, smiling, grey backdrop: https://media.base44.com/images/public/69c59943a9e546455164fc31/4404d0473_043-QXwbJQ3qUJI1.jpeg - Navy shirt, hotel corridor: https://media.base44.com/images/public/69c59943a9e546455164fc31/d8dcb1d28_020-8a1EX7zBq941.jpeg 2. SPECS — 1280x720px, 16:9 landscape. Must read clearly at ~320px wide (mobile inbox / YouTube sidebar). 3. LAYOUT — Split frame: Wayne cropped tight head-and-shoulders on ONE half (head nearly touching the top edge), text on the other half. Never centre him behind the text. 4. TEXT — Max 3-6 words in the headline. Bold condensed uppercase sans-serif. Headline white, payoff line in brand gold #FAC900. Generous negative space. No paragraphs. 5. HEADLINE FORMULA — Contrarian hook + payoff subtitle. Proven example: 'IT'S NOT THE RATE' (white) / 'IT'S THE PRESS CONFERENCE' (gold). Alternative: one giant data point (e.g. '87.9%') plus a short qualifier. 6. CTA — Wayne's preferred wording: 'Click here to watch live with me!' rendered as a small rounded gold #FAC900 pill with dark navy text. Plus a small time stamp bottom-left: 'LIVE TODAY · 1PM ET'. 7. COLOR — Deep navy #0B1220 background, faint candlestick/line-chart texture, warm gold rim light on Wayne, vignette. Extreme contrast. Gold #FAC900 is the only accent. 8. NEVER INCLUDE — logos, watermarks, device frames, stock-photo strangers, busy backgrounds, or long sentences. 9. WORKFLOW — Generate 3 variants in parallel, present links for selection, then apply the chosen one to: the event landing page config (e.g. src/components/fed/fedEventConfig.js), the email templates (e.g. fedEventEmail), and the Webinar record's thumbnail_url.

thumbnailbrandingwebinarmarketingdesign-standardwayne-photos

2026-09-15

PU Prime Mailchimp list (4873314383) — 17k trader contacts imported, consent held by prior provider

Architecture
medium

2026-09-09: Wayne imported the PU Prime contact set himself, taking the list from 672 to 16,272 members. Provenance confirmed by Wayne: all contacts are traders and all opted in via another email provider before migration — consent basis sits with that prior provider, not with a Base44/Mailchimp signup. This is NOT a cold/unconsented list; do not re-flag it as such in future sessions. Source file used: pu17k.xlsx — 17,230 rows, 17,224 unique valid emails, 0 duplicates, 6 invalid dropped. Fields: id, email, first_name, last_name, phone, country (numeric codes), city, dob, document_status. document_status breakdown: 10,247 Unverified / 5,257 Verified / 1,720 Declined. Dominant domains: gmail.com 12,937, yahoo.com 1,266, hotmail.com 631. Separately on 2026-09-09, support@fxprimus.com was archived from this list at Wayne's request (broker-side address, not a subscriber). A full scan of all app entities storing emails (Customer, WebinarRSVP, AbandonedCheckout, BrokerAccountLink, Coach, FunnelSubscriber, AfricanForexLead) found ZERO @puprime.* or @fxprimus.* addresses in our own database.

puprimemailchimplist-hygieneconsentfxprimus

2026-09-09

PU Prime must NOT be invited to afternoon Daily Market Debriefing webinars

Architecture
high

Standing rule from Wayne (2026-09-09): PU Prime customers/leads are NOT to be invited to the afternoon Daily Market Debriefing (4 PM ET / 20:00 UTC) webinars. PU Prime receives only their own morning-session invites and PU Prime-branded campaigns. GAP IDENTIFIED at time of recording: sendWebinarReminders (recurring-webinar branch) filters recipients by min_tier ONLY. It does not read webinar.broker_slug, and does not exclude customers by Customer.broker. Therefore any PU Prime customer at tier >= pro receives the Debriefing 'Starting Now' email. At time of check: 6 PU Prime customers exist (5 free, 1 promax) and 1 would receive it. The Debriefing series records have broker_slug = null and min_tier = 'pro'. Same gap means broker-exclusive webinars (broker_slug set) are NOT actually restricted to that broker on reminder sends — the filter ignores broker_slug entirely. FIX NOT YET APPLIED — awaiting confirmation. Proposed: in the recurring branch of sendWebinarReminders, (a) if webinar.broker_slug is set, only include customers whose broker matches; (b) if webinar.broker_slug is null/empty, exclude customers whose broker is a white-label broker (or at minimum exclude 'puprime') so house sessions don't leak to white-label audiences.

puprimewebinarsdebriefingemailbroker-gatingwhite-label

2026-09-09

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-05T12:30:16.769Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-05

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-05T06:30:16.461Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-05

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-04T23:30:17.680Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-04

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-04T17:30:16.744Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-04

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-04T11:30:16.538Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-04

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-04T04:30:17.361Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-04

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-03T22:30:16.631Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-03

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-03T15:30:16.715Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-03

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-03T08:30:17.764Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-03

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-03T01:30:16.940Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-03

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-02T18:30:17.036Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-02

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-02T12:30:16.770Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-02

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-02T05:30:16.963Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-02

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-01T23:30:16.806Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-01

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-01T16:30:16.998Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-01

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-01T09:30:17.140Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-01

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-09-01T03:30:16.927Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-09-01

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-31T21:30:16.654Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-31

TRADARS does not use Cloudflare

Architecture
critical

TRADARS has NO Cloudflare account. Any Cloudflare headers (cf-ray, server: cloudflare) appearing in responses from aiden.tradars.com are from Hostinger's infrastructure — Hostinger routes traffic through Cloudflare at the hosting level, NOT because TRADARS has a Cloudflare proxy. Do NOT suggest Cloudflare dashboard changes or assume Cloudflare proxying is involved in routing issues.

hermescloudflarehostingerinfrastructuredead-end

2026-08-31

Mobile Platform Strategy — Adaptive Shell + Curated, Chart-Free Surface

Architecture
high

Decided on 2026-08-31 (session with Wayne) that the phone experience will be a deliberately different product, not responsive reflow of the desktop terminal. Three principles: 1. ADAPTIVE SHELL, NOT A SEPARATE APP. One codebase, one route. On small screens, render a mobile shell (slim top bar + bottom tab bar: Home / Radars / Aiden / Account; full section→radar tree moves into a slide-out drawer). Shared backend, tier-gating, and broker branding stay untouched — only presentation forks. Desktop experience stays byte-for-byte identical above the breakpoint. 2. CURATED SURFACE, FULL DEPTH ON DEMAND. Mobile surfaces a 'daily-use loop' of ~6–7 radars: Market (movers + sparklines), Risk (score + 1-line narrative), Spike (next event + countdown), Briefing/SitRep, Aiden, Webinars, Account. All other radars remain accessible to paying users via the drawer under a 'Best on desktop' section — nothing is locked away from a subscriber; the popular ones are just front-and-center. Curated set is a superset of each tier's unlocks, never a subset. 3. CHART-FREE MOBILE, AIDEN AS THE ANALYSIS PATH. No technical charts (candlesticks, OHLC, multi-axis overlays, correlation matrices) on mobile — unreadable at 390px. Mobile radars are number-forward readout cards (score + 1-sentence AI takeaway + at most a sparkline) consuming the same data the desktop charts do. Aiden becomes the mobile user's deep analysis channel: instead of opening a chart, ask Aiden what's happening on an asset and get a written readout. Desktop remains the place for chart study. Build order: Phase 1 proof slice = mobile shell + briefing feed + mobile Market + mobile Risk. Validate feel, then roll pattern outward. Use base44.analytics.track to confirm which radars mobile users actually open before finalizing the curated set. Files likely affected: src/pages/Platform.jsx, src/components/platform/PlatformHeader.jsx, PlatformSubNav.jsx, PlatformContentRenderer.jsx, platformNavConfig.jsx; new useIsMobile() hook; new src/components/mobile/ directory for the shell + readout-card variants.

mobileplatformux-strategyaidenadaptive-shellarchitecture

2026-08-31

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-31T14:30:17.054Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-31

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-31T08:30:16.432Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-31

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-31T01:30:16.563Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-31

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-30T18:30:16.632Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-30

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-30T12:30:16.454Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-30

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-30T05:30:16.487Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-30

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-29T23:30:16.388Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-29

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-29T16:30:16.470Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-29

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-29T09:30:16.703Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-29

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-29T02:30:16.842Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-29

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-28T19:30:16.608Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-28

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-28T12:30:16.629Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-28

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-28T05:30:16.584Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-28

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-27T22:30:16.740Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-27

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-27T15:30:16.981Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-27

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-27T09:30:16.502Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-27

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-27T02:30:16.810Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-27

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-26T20:30:16.645Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-26

HERMES_DOWN_ALERT_SENT

Known Issue
critical

Alert fired at 2026-08-26T13:30:16.880Z. Error: {"error":"Unauthorized"}

hermesalert-throttle

2026-08-26

TRADARS v3.0•Published: 10/1/2026 1:30:26 AM