Copperwatch v1.2.0
Build Date: 2026-07-17

This update bundles TWO addons: CopperwatchSync (prices + scanner) and the new CopperwatchAH
(in-game Buy / Sell / Undercuts tabs on the Auction House).

CHANGES IN THIS VERSION:
- NEW addon CopperwatchAH: fast in-game Auction House buying, selling and undercut-cancelling,
  priced from Copperwatch data. Buy tab (search cheapest page + load more, buy / buy-all-below),
  Sell tab (competitor scan, undercut-cheapest suggestion, deposit + profit, below-vendor alert),
  Undercuts tab (scan + reliable one-per-click cancel), shopping lists.
- Buy/cancel operations hardened for the Ascension client: one confirmed action per click
  (money-verified buys, list-diff-verified cancels), no more phantom counts or stuck runs.
- Per-listing scaling level shown (matches the Browse "Lvl" column); tooltip Vendor value now
  shown per-unit with the stack total in parentheses.
- UI blends into the host: ElvUI backdrop under ElvUI, native Bids-tab parchment without it;
  tab titles in the frame header.
- Scan tab: title in the frame header; last-scan stats row (items, volume, timestamp).

CHANGES IN v1.1.8:
- New "Vendor" and "Disenchant" value lines in the standalone Copperwatch tooltip block
  (both can be turned off via the new showVendor / showDisenchant config flags). The
  disenchant value is an expected value: yield tables (with Ascension's Lesser/Greater
  Mystic Essence) priced from Copperwatch market data. New file:
  CopperwatchSync_Disenchant.lua.
- Vendor/disenchant lines use the full item link, so scaled and suffixed variants show
  their own vendor price, not the base item's.
- Added CopperwatchSync_Status.lua stub to the shipped files (the Companion overwrites
  it on every sync; the stub guarantees the addon loads before the first sync).

CHANGES IN v1.1.7:
- Fixed character panel equipment slot tooltips showing only the slot name (e.g. "Head")
  instead of the full item tooltip when running standalone (no TSM installed). Our
  GameTooltip.SetInventoryItem hook wasn't returning the original function's result, so
  Blizzard's PaperDollItemSlotButton_OnEnter treated every slot as empty and overwrote the
  tooltip with just the slot label.

CHANGES IN v1.1.6:
- Fixed Market Value / Min Buyout showing fractional copper (e.g. "60.38" copper) in the
  Copperwatch Prices tooltip block — the weighted-average market value wasn't rounded to a
  whole copper before formatting.
- A finished /cws scan now updates tooltips immediately, same session — no /reload needed.
  Previously the fresh scan only reached tooltips after a reload merged it in; now the scanner
  pushes it straight into the tooltip data the moment the scan completes, matching how TSM
  shows its own fresh scans without a reload.

CHANGES IN v1.1.5:
- Fixed the addon's own scan-tab panel title / /cws status / load message showing "v1.1.0"
  regardless of the actual installed version — that display reads a separate internal VERSION
  constant that hadn't been bumped since three releases ago. Now kept in sync with the .toc.

CHANGES IN v1.1.3:
- Fixed standalone mode (no TSM) not showing your own fresh /cws scan results in tooltips —
  they kept showing the last Companion-synced server price/time instead. The built-in scanner
  now also saves a plain per-item table (not just the TSM-encoded scanData string), and
  CopperwatchSync.lua merges it into the tooltip data on load, preferring whichever of the
  local scan or the server data is newer per item.

CHANGES IN v1.1.2:
- Fixed TSM integration mode showing stale Copperwatch server prices instead of your own fresh
  TSM scan after a /reload. TSM stores its real scan data in a compact encoded form that it only
  decodes lazily, so right after a reload our freshness check could misread a freshly-scanned
  item as "no TSM data yet" and overwrite it with our older data. We now only patch/override an
  item when TSM has no data of its own for it at all.

CHANGES IN v1.1.1:
- Scan tab UI reworked to match the overall Copperwatch look: flat (non-gradient) brand-color
  progress bar, tidied spacing between title/description/bar/buttons.
- Added a warning to leave your character alone while a scan runs: "Leave this tab open, don't
  search manually, and don't move your character until it finishes."

CHANGES IN v1.1.0:
- Built-in AH scanner (CopperwatchSync_Scanner.lua): "Scan" button on the Auction House
  frame (right of the Browse/Bids/Auctions tabs) with live page progress and ETA
  ("4/652 - ~5 min"). Slash: /cws scan | scan noreload | scanstop | scanstatus (also /cwas).
- Scan results are saved as TSM-format scanData in the CopperwatchSyncScanDB SavedVariable,
  which the Companion uploads to Copperwatch — no TSM needed to contribute price data.
- After a scan the UI auto-reloads (5s countdown, cancellable) so the data reaches the
  Companion immediately.
