{
  "scan_date": "2026-08-11",
  "macro_notes": "Automated weekday scan (Tue 2026-08-11, TSX open; prior scan 2026-08-10 Mon, no gap). active_mode confirmed 'aggressive' in screen_criteria.json; aggressive_overrides applied throughout (RSI band 35-72 core / 75 leading-sector-breakout ceiling, min R:R 1:3, T1 20% at 1:1.5 / T2 30% at 1:3 / T3 50% runner trailing below rising 20 EMA, time stops 5/10 days with 20EMA-and-breakeven override, pyramid rule, 15% cash reserve, risk% by score 1.75/1.25/1.00). Step 1b (enrich incomplete positions): skipped -- positions.json open_positions is empty, nothing to enrich. Step 5 (exit checks): skipped -- no open positions, so no holds/exits today.\n\nStep 1a lesson applied: retrospective.json's sole lessons_for_next_scan item (narrow_funnel -- 0 distinct tickers closed program-to-date) is still live. Applied by: (1) rotating the sector-sweep query to Energy (next in funnel_breadth.sector_universe after Financials, used 08-10); (2) when 6 of 7 base screener_sources again returned only generic/index-level pages or a stale reused article instead of actionable per-ticker lists, running the screener_outage_fallback plus two additional ad-hoc discovery searches (TSX today's gainers list, Real Estate/Consumer Staples/Communication Services sector movers) that surfaced genuinely fresh, independently-sourced names (SU and ABX via Globe and Mail movers rather than only the XEG/XMA ETF-holdings lookup, plus CIGI and FSV in Real Estate -- a sector with zero prior-program coverage); (3) deprioritizing the remaining mega-cap sector-ETF constituents that were surfaced ONLY via the XEG/XFN/XMA/XIT holdings lookups, per funnel_breadth.recurring_megacap_handling (today is Tuesday, not Wednesday, and none of these carry a deferred_megacap_moved lesson). Net: 30 distinct tickers evaluated across 6 sectors (Energy, Financials, Materials, Technology, Real Estate, Healthcare), clearing both min_candidates_evaluated_per_scan (15) and min_sectors_represented (5).\n\nStep 1c (resolve yesterday's watchlist) -- both entries re-checked before any new sourcing:\n- GIL: the 08-10 NYSE/TSX price-confusion blocker is resolved -- an explicit ticker-qualified query today (TradingView TSX:GIL) returned $80.16 CAD (-1.76% intraday), consistent with the $81-82 CAD range confirmed live on 08-07, confirming the $56-57 figures seen in generic searches on 08-10 and again today are the NYSE-listed USD quote being served instead of GIL.TO/GIL-T. Still unresolved: the original 08-07 ask -- confirmed breakout-day volume >1.2x the 20-day average. Three separate attempts today (general query, ticker-qualified query, volume-specific query) returned price/dividend/analyst-target data but no volume figure. Kept on watchlist (3rd appearance: 08-07, 08-10, 08-11 -- well under the 7-trading-day max carry) with an updated waiting_for reflecting the resolved price question and the still-open volume question, per funnel_breadth.watchlist_resolution_rule's requirement that the note actually change, not repeat.\n- IFP: a new, distinct data-quality problem surfaced today -- two searches for IFP.TO returned conflicting prices ($13.24 CAD, matching 08-07/08-10 reads, vs $10.96 CAD +3.40% intraday from a stockanalysis.com-sourced result), a ~17% discrepancy that cannot both be current. The original setup_B_breakout asks (breakout-day volume >1.2x 20-day average; the specific resistance level broken -- one source's mention of $19/$22-25 resistance looks stale/inconsistent with IFP's actual ~$13 trading range and 52-week high of $14.55) remain unconfirmed. Kept on watchlist (2nd appearance: 08-10, 08-11 -- under the 7-day max carry) with waiting_for updated to prioritize resolving the price conflict before re-attempting volume/resistance confirmation.\n\nScreener outage / fallback: SwingTradeBot Canada, Barchart, TradingView Screener, and Trade That Swing again returned only generic platform/marketing pages or index-level statistics, not actionable per-ticker lists. The Energy sector-sweep returned only US small-cap energy names and XEG-level stats, no TSX tickers. The Globe and Mail breakout query resurfaced the same stale 'Five Canadian Stocks Exhibiting Institutional Accumulation Signals' piece (CLS, MDA, EIF, KXS, X) already flagged stale on 08-10 -- not re-used as a fresh source. That is 5 of 7 base sources effectively down, past the 2+ threshold. Per screener_outage_fallback, ran 3 fallback searches (TSX 52-week-high list, Technology sector-sweep, Industrials/Healthcare sector-sweep) plus 2 further ad-hoc discovery searches (today's TSX gainers/movers list, Real Estate/Consumer Staples/Communication Services sector performance) to reach the funnel_breadth minimums. The gainers/movers search was the most productive: it surfaced SU (+4.35% today, $87.48) and ABX (-6.45%, $57.03) independently of the XEG/XMA ETF-holdings lookup (so recurring_megacap_handling's deferral does NOT apply to either -- both got full Step 3/4 treatment below), plus CIGI and FSV in Real Estate, a sector with no prior coverage this program. The Technology/Industrials/Healthcare sector-sweeps mostly surfaced sub-$30M-market-cap TSX/TSXV-mixed names (South Star Mining Corp, Copper Fox Metals, Auxly Cannabis Group, Lion Rock Resources) that fail the $500M CAD market-cap fundamental gate outright, plus Tucows (TC.TO) which had confirmable technicals but failed the 200d-EMA trend gate.\n\nLeading sector: XEG (Energy) was the standout today with a confirmed +3.34% same-day move (vs. the broader TSX Composite's +0.24% on 08-10 context) and drove SU/ABX-adjacent commentary about financials and real estate also advancing after a BoC rate hold. A full week-over-week relative-strength-vs-Composite ranking (the intended basis for Setup B's leading-sector RSI ceiling) was not obtainable from any source despite the Sector ETF Constituent Check attempts -- same data gap as 08-10. Energy is noted as today's tentative leading sector on same-day move strength alone; moot regardless, since no surviving candidate reached Setup B scoring today.\n\nCandidate-by-candidate for the 4 tickers that got genuine individual Step 3/4 review (independently sourced, not deferred as recurring mega-caps):\n- SU (Suncor Energy, Energy): irreconcilable technical data -- one source (Globe and Mail movers) shows +4.35% today at $87.48; independent technical sources (Investing.com, TradingView) taken the same day show RSI 24.0 (Strong Sell/oversold), MACD -1.02 (Sell), and price below the 5d/50d/200d moving averages ($57.17/$60.44/$64.45), which is numerically inconsistent with an $87.48 quote. The two datasets cannot both be describing the same current state. Following the AYA precedent from 08-10 (genuinely conflicting same-day technical dataset), excluded on data-quality grounds rather than scored on unreliable inputs.\n- ABX (Barrick Mining, Materials): reported Q2 2026 earnings before the open on 08-10 (already past, not a forward earnings-window exclusion) and fell -6.45% today to $57.03 on top of a -16.28% trailing-month decline; MACD -1.22 (Sell), RSI 43.07 (mid-band -- not below the 35 floor, so the oversold carveout does not apply), moving averages showing 0 buy / 12 sell signals. This is a breakdown in progress following a weak earnings reaction, not a washed-out reversal -- explicitly does not fit setup_C_oversold_reversal (no reversal candle, RSI not sub-35, momentum still deteriorating) or either of the other two setups. Excluded -- fails all three entry setups.\n- CIGI (Colliers International, Real Estate): clean earnings window (reported 07-30) but price ($138.87) is confirmed below its 200-day moving average ($151.01, vs 50d MA $135.65) -- fails the hard Step 3 trend gate. Excluded.\n- FSV (FirstService, Real Estate): clean earnings window (next report 10-22) but P/E (TTM) of 40.59 is above the base 9-35 band with no valuation exception available (Real Estate is not in the Energy/Materials override list). Also showed mixed/incomplete technicals -- price ($258.42) below both its 20d ($266.29) and 50d ($267.06) EMAs despite an 'overall buy' moving-average rating, and no RSI or 200d EMA figure was obtainable. Excluded on the P/E gate primarily, mixed technicals secondarily.\n\nPhase D commodity trigger (aggressive_overrides.valuation_exception): not explicitly re-verified today (no gold/WTI %-move search run) -- moot regardless, since neither Energy/Materials candidate that reached fundamental review (SU, ABX) needed the up-to-45 P/E override; both were excluded on data-quality/momentum grounds before P/E was decision-relevant.\n\nNet result: zero new_buys, two watchlist entries (GIL and IFP, both carried with genuinely updated blockers). This is the 6th consecutive scan with zero new_buys since 08-04 (08-04, 08-05, 08-06, 08-07, 08-10, 08-11 -- no trading day skipped). As on 08-10, today's specific exclusions each rest on an individually-checked gate (a hard trend-gate fail, a valuation-band fail, a breakdown-in-progress that fits no setup, or an irreconcilable same-day technical dataset) rather than under-searching -- 30 distinct tickers were evaluated across 6 sectors, clearing both funnel_breadth minimums with room to spare. The technical-data-source reliability problem flagged on 08-10 (partial/blocked/conflicting reads on individual tickers) recurred again today on two of the four genuinely fresh, non-deferred candidates (SU, and to a lesser extent FSV) -- worth continued attention at the next retrospective run, since it may be masking real candidates rather than TSX conditions genuinely offering nothing this stretch.",
  "candidates_evaluated_count": 30,
  "sectors_evaluated": [
    "Energy",
    "Financials",
    "Materials",
    "Technology",
    "Real Estate",
    "Healthcare"
  ],
  "lessons_applied": [
    "narrow_funnel (retrospective.json, still active -- 0 distinct tickers closed program-to-date): applied by rotating the sector-sweep to Energy, running the screener_outage_fallback plus 2 additional ad-hoc discovery searches after 5 of 7 base sources returned no actionable per-ticker data, and deprioritizing reconfirmation of mega-cap names surfaced only via the XEG/XFN/XMA/XIT sector-ETF holdings lookups -- 30 distinct tickers evaluated across 6 sectors (including Real Estate, a sector with no prior coverage this program), clearing funnel_breadth's min_candidates_evaluated_per_scan (15) and min_sectors_represented (5). This also changed which candidates got full scoring: SU and ABX were surfaced independently of the ETF-holdings lookup via a gainers/movers search, so the mega-cap deferral did not apply to them and both received genuine Step 3/4 review instead of being auto-excluded."
  ],
  "signals": {
    "new_buys": [],
    "holds": [],
    "exits": [],
    "watchlist": [
      {
        "ticker": "GIL",
        "waiting_for": "Price question resolved today: an explicit ticker-qualified query (TradingView TSX:GIL) returned $80.16 CAD (-1.76% intraday), consistent with the $81-82 CAD level confirmed live on 08-07 -- confirms the recurring $56-57 figure is the NYSE-listed USD quote being served instead of GIL.TO/GIL-T, not an actual price collapse. Still outstanding: the original 08-07 ask -- confirmed breakout-day volume >1.2x the 20-day average. Three attempts today (general query, ticker-qualified query, volume-specific query) found no volume figure. This is the 3rd consecutive scan (08-07, 08-10, 08-11) this specific confirmation has failed -- if tomorrow's check still can't produce a volume figure, move to excluded rather than carry a 4th time."
      },
      {
        "ticker": "IFP",
        "waiting_for": "New blocker found today, distinct from 08-10's ask: two searches for IFP.TO returned conflicting prices -- $13.24 CAD (matching the 08-07/08-10 reads, above both 50d/200d MAs) vs $10.96 CAD +3.40% intraday (stockanalysis.com-sourced) -- a ~17% discrepancy that cannot both be current. Next check must first resolve which price is authoritative via a single dated, ticker-qualified quote before re-attempting the original setup_B_breakout asks (breakout-day volume >1.2x the 20-day average; the specific resistance/consolidation level broken -- prior '$19/$22-25 resistance' commentary looks stale/inconsistent with IFP's actual ~$13 range and $14.55 52-week high). If the lower $10.96 price is confirmed real, this looks like a reversal rather than a breakout and the setup should be invalidated to excluded instead of carried a 3rd time."
      }
    ]
  },
  "excluded": [
    { "ticker": "SU", "reason": "Suncor Energy (Energy). Independently sourced via TSX gainers/movers (+4.35% today, $87.48), not only the XEG holdings lookup -- so the recurring-megacap deferral does not apply; given full review. Irreconcilable same-day technical dataset: independent sources (Investing.com, TradingView) show RSI 24.0 (Strong Sell/oversold), MACD -1.02 (Sell), and price below the 5d/50d/200d moving averages ($57.17/$60.44/$64.45), numerically inconsistent with an $87.48 quote. Following the AYA (08-10) precedent, excluded on data-quality grounds rather than scored on unreliable inputs.", "price_cad": null },
    { "ticker": "ABX", "reason": "Barrick Mining (Materials). Independently sourced via TSX gainers/movers, not only the XMA holdings lookup -- given full review. Reported Q2 2026 earnings before the open 08-10 (already past); fell -6.45% today to $57.03 on top of a -16.28% trailing-month decline. MACD -1.22 (Sell), RSI 43.07 (mid-band, not below the 35 floor so the oversold carveout does not apply), 0 buy / 12 sell signals across moving averages. A breakdown in progress post-earnings, not a washed-out reversal -- fits none of the three entry setups.", "price_cad": null },
    { "ticker": "CIGI", "reason": "Colliers International Group (Real Estate). Clean earnings window (reported 07-30). Price ($138.87) confirmed below its 200-day moving average ($151.01, vs 50d MA $135.65) -- fails the hard Step 3 trend gate.", "price_cad": null },
    { "ticker": "FSV", "reason": "FirstService Corp (Real Estate). Clean earnings window (next report 10-22). P/E (TTM) 40.59 is above the base 9-35 band with no valuation exception available (sector is not Energy/Materials). Also mixed/incomplete technicals -- price ($258.42) below both its 20d ($266.29) and 50d ($267.06) EMAs despite an 'overall buy' moving-average rating; no RSI or 200d EMA figure obtainable.", "price_cad": null },
    { "ticker": "TC.TO", "reason": "Tucows Inc (Technology). RSI 46.4 (in-band) and MACD -0.09, but price ($23.28) confirmed below its 200-day moving average ($26.52) -- fails the hard Step 3 trend gate.", "price_cad": null },
    { "ticker": "South Star Mining Corp", "reason": "Materials. Surfaced via a mixed TSX/TSXV small-cap weekly list; market cap ~$27.4M CAD, far below the $500M CAD minimum and inconsistent with the TSX-main-board-only fundamental gate -- likely TSXV-listed. Excluded on the fundamental gate without a technical search.", "price_cad": null },
    { "ticker": "Copper Fox Metals", "reason": "Materials. Surfaced via the same mixed TSX/TSXV small-cap list alongside sub-$30M-cap names; no confirmed market cap or exchange-listing data obtained, but the source profile makes it presumptively TSXV/sub-scale. Excluded on likely fundamental-gate fail (market cap, exchange) rather than spend additional search budget confirming a name this far outside the program's cap/exchange profile.", "price_cad": null },
    { "ticker": "Auxly Cannabis Group", "reason": "Healthcare. Surfaced via the same mixed TSX/TSXV small-cap list; no confirmed market cap or exchange-listing data obtained, presumptively TSXV/sub-scale. Excluded on likely fundamental-gate fail without an additional confirming search.", "price_cad": null },
    { "ticker": "Lion Rock Resources", "reason": "Materials. Surfaced via the same mixed TSX/TSXV small-cap list; no confirmed market cap or exchange-listing data obtained, presumptively TSXV/sub-scale. Excluded on likely fundamental-gate fail without an additional confirming search.", "price_cad": null },
    { "ticker": "CNQ", "reason": "Canadian Natural Resources (Energy). Resurfaced only via XEG top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "CVE", "reason": "Cenovus Energy (Energy). Resurfaced only via XEG top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "RY", "reason": "Royal Bank of Canada (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "TD", "reason": "Toronto-Dominion Bank (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "BMO", "reason": "Bank of Montreal (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "BNS", "reason": "Bank of Nova Scotia (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "CM", "reason": "Canadian Imperial Bank of Commerce (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "BN", "reason": "Brookfield Corporation (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "MFC", "reason": "Manulife Financial Corporation (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "NA", "reason": "National Bank of Canada (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "SLF", "reason": "Sun Life Financial Inc (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "IFC", "reason": "Intact Financial Corporation (Financials). Resurfaced only via XFN top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "AEM", "reason": "Agnico Eagle Mines (Materials). Resurfaced only via XMA top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "WPM", "reason": "Wheaton Precious Metals (Materials). Resurfaced only via XMA top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "FNV", "reason": "Franco-Nevada (Materials). Resurfaced only via XMA top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "NTR", "reason": "Nutrien (Materials). Resurfaced only via XMA top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "SHOP", "reason": "Shopify (Technology). Resurfaced only via XIT top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "CSU", "reason": "Constellation Software (Technology). Resurfaced only via XIT top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "CLS", "reason": "Celestica (Technology). Resurfaced only via XIT top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "GIB.A", "reason": "CGI Inc (Technology). Resurfaced only via XIT top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null },
    { "ticker": "DSG", "reason": "Descartes Systems Group (Technology). Resurfaced only via XIT top-holdings lookup -- recurring mega-cap name, not individually reconfirmed today (funnel_breadth.recurring_megacap_handling). Weekly reconfirmation runs Wednesdays.", "price_cad": null }
  ]
}
