First Class TrackActive plugin release
First Class Track Change Log
V1.0-B02af - 2026-09-10 - Customer Communications: real numeric eBay My Messages MessageIDs are now authoritative over synthetic threadhist-* recovery rows. - Recovered-thread de-duplication strips eBay feedback-count and Reply/offer UI chrome before comparing message bodies. - Existing threadhist-* duplicates are removed against matching real eBay rows on every eBay sync, including old parser direction mistakes. - A synthetic recovered row can no longer cause the later real eBay MessageID to be skipped by recent-message duplicate suppression. - No database schema change. V1.0-B02ae - 2026-09-10 - Customer Communications: removed the keyword-gated eBay media repair that skipped image-bearing messages whose authored text did not literally say picture/photo/image/attachment. - Exact media recovery now scans every local Inbox/Sent bubble with a numeric My Messages MessageID and zero stored media, then writes returned MessageMedia to that exact DB record by MessageID. - A media-version bump now reopens the full configured eBay lookback instead of only the normal one-day sync overlap, so older image-bearing messages are actually revisited after upgrade. - Exact repair prefers XML MessageMedia and falls back to HTML image extraction only when XML is empty, preventing duplicate $_1/$_0 variants of the same eBay image from rendering twice. - Thread #18 case: MessageID 211872392066 / DB 170 is now eligible for repair even though its text does not contain a media keyword; the recovered eBay image is rendered by the existing thread-bubble image renderer. - No database schema change. V1.0-B02ad - 2026-09-09 - Customer Communications: repaired the B02ac Media Diagnostic layout where stripped eBay HTML indentation was preserved as hundreds of blank lines, making the actual exact-message probes effectively unreachable. - Diagnostic message bodies are now whitespace-compacted and height-bounded; priority zero-media turns whose text mentions a picture/photo/image/attachment are surfaced at the top with jump links to their exact MessageID probe. - Exact GetMyMessages HTML media extraction now accepts a direct EPS/image HREF even when eBay renders it as a text filmstrip link with no nested IMG element. - Media replay marker bumped to message-media-v6-exact-html-href so the corrected extraction path is forced once after upgrade. - Preserves exact MessageID-to-DB-record attachment routing; no database schema change. V1.0-B02ac - 2026-09-09 - Customer Communications: fixed the remaining eBay picture-recovery blind spot exposed by thread #18 / faunaf0. - Exact media repair now probes the visible My Messages MessageID with GetMyMessages DetailLevel=ReturnMessages before using GetMemberMessages as an ASQ fallback. - Existing known MessageIDs can no longer be skipped during the B02ac media repair pass; media marker bumped to message-media-v5-exact-my-message-id to force one corrected full-detail replay. - Missing-media candidate repair maps returned MessageMedia directly back to the exact DB record instead of guessing the seller response from exchange LastModifiedDate. - Media Diagnostic now traces every visible bubble through local DB state, exact GetMyMessages ReturnMessages, XML MessageMedia, embedded HTML image candidates, normalizer output, raw message XML, intended DB/renderer state, and GetMemberMessages fallback. - No database schema change. V1.0-B02ab - 2026-09-09 - Customer Communications: fixed exact eBay media recovery dropping buyer Question.MessageMedia while looking only at seller response_media. - Exact media repair now routes buyer Question media to incoming turns and seller Response media to outgoing turns. - eBay exchange parser now preserves per-Response media plus image URLs embedded in question/response HTML. - Added read-only per-thread eBay Media Diagnostic modal with local transcript IDs/media, live exact GetMemberMessages results, buyer/seller media separation, and Copy Diagnostic. - Bumped media replay marker to message-media-v4-bidirectional-exact-thread. - No database schema change. V1.0-B02z - Customer Communications database-native eBay thread union and embedded picture recovery V1.0-B02y - Customer Communications eBay Sent-thread binding and seller media recovery - Rebinds Sent-folder replies that older builds placed in seller-only threads back into the buyer/item conversation. - Persists and matches GetMyMessages ExternalMessageID as the eBay conversation key. - Adds multi-source buyer inference for Sent rows: SendToName, RecipientUserID, Dear wrapper, subject hint, external conversation key, and existing incoming context. - Replays known Inbox/Sent details once, repairs existing thread_id/buyer/item/order context, and deletes empty orphan thread shells. - Merges message media during enrichment and uses documented GetMemberMessages Response values only as de-duplicated gap-fill seller turns. - No database schema change. V1.0-B02x - Customer Communications eBay thread reconstruction and message-media recovery - Removes B02w synthetic duplicate buyer rows. - Recovers missing seller history from full GetMyMessages thread snapshots. - Keeps GetMemberMessages as media/metadata only and no longer uses it as a seller-reply source. - Restores exchange-level eBay message pictures even when no standalone Response node is available. - No database schema change. V1.0-B02v - 2026-09-08 - Fixed Customer Communications Sync Messages HTTP 404 by routing the no-reload sync through a dedicated wp_ajax_fct_cc_sync_now_ajax handler instead of AJAX-posting the redirect-based admin-post.php form. - Added sync progress state/spinner and preserved B02s/B02u stable-position and persistent sizing behavior. - Kept admin-post.php sync as the normal no-JavaScript fallback. - No database schema change. V1.0-B02u - 2026-09-08 - Customer Communications: added persistent 9–20px message font sizing with compact A−/slider/A+ control. - Added mouse/pointer draggable folder/thread panel dividers with per-user persistent widths. - UI preferences are stored in WordPress user meta with localStorage instant restore; AJAX screen updates preserve the chosen geometry. - No database schema change. V1.0-B02t - 2026-09-08 - Repaired eBay conversation-turn parsing so each Inbox/Sent MessageID stands on its own bubble. - Hard-stop quoted eBay history at Dear <member>, Previous message, attribution, reply, original/forwarded-message, order-status and item-ID boundaries. - Added protection for quote markers collapsed onto the end of an authored line (for example "Tim Dear skibe-38,"). - Existing stored eBay messages are cleaned at render time; new imports are cleaned before storage/deduplication. - Preserves B02s no-reload Customer Communications workspace and B02q full Inbox/Sent pagination. V1.0-B02s - 2026-09-08 - Customer Communications: rebuilt the message-list row around a master checkbox + per-thread checkbox column with bright blue unread indicators. - Checkboxes use blue selected boxes with white checkmarks; the master checkbox controls every visible row and shows an indeterminate state for partial selection. - Thread thumbnails are rounded squares, open the live eBay item in a new tab, and carry a lower-right Seller Hub edit shortcut that also opens in a new tab. - Replaced the old Re:/message-subject line in the thread list with the actual local eBay order item title, with a clean subject fallback when no order title is available. - Added no-reload AJAX navigation for folders, thread selection, search, Sync Messages, replies, settings saves, and Gmail disconnect while preserving page position, pane scroll positions, workspace dimensions, and checkbox selection. - No database schema change; stable First Class Track/ folder and all B02r sync/conversation repairs are preserved. V1.0-B02r - 2026-09-08 - Customer Communications: normalize each eBay GetMyMessages row to one current conversation turn instead of rendering the quoted full thread inside one bubble. - Strip Dear/member duplicate blocks, Your previous message/history, member IDs, feedback counts, and other eBay wrapper chrome. - Apply cleanup at display time to existing records and before storage/deduplication for new eBay imports. - No database schema change. V1.0-B02q - 2026-09-08 - Customer Communications: fixed missed eBay messages on high-volume accounts by removing the one-page / newest-100 GetMyMessages collection ceiling. - eBay Inbox and Sent now paginate all headers in the configured lookback window using PaginationResult. - Added one-time full Inbox + Sent paginated history backfill for existing installs and automatic re-backfill when lookback days increase. - Existing stored eBay IDs skip redundant body retrieval; detail-batch failures no longer silently advance sync history. - No database schema change. V1.0-B02p - 2026-09-08 - Customer Communications: fixed eBay wrapper metadata leaking into message bubbles when feedback counts contain thousands separators such as (1,149). - Customer Communications: added cleanup for member-on-marker-line + score-on-next-line wrapper variant. - No database schema change. V1.0-B02m - eBay Inbox + Sent synchronization repair * Fetch FolderID 0 and FolderID 1 independently using the existing two-pass GetMyMessages implementation. * One-time Sent backfill for existing B02 installations. * Preserve eBay folder provenance in source_reference. * Avoid duplicate FCT outbound messages when their Sent-folder copy is later returned by eBay. First Class Track V1.0-B02l - Customer Communications now suppresses unrelated WordPress, plugin, theme, updater, telemetry and recommendation admin notices on that page only. - The suppression runs at the end of admin_head and clears admin_notices, all_admin_notices, network_admin_notices and user_admin_notices callbacks for the Customer Communications request. - Added a CSS fallback for standard notice containers that are printed directly instead of through WordPress notice hooks. - FCT Customer Communications own contextual success/error notice remains visible inside the messaging workspace. - No database schema change; stable First Class Track/ folder and B02k activation repair are preserved. First Class Track V1.0-B02k - Fixed stable-folder activation so an existing B02 database is adopted instead of being sent through the heavy historical migration path. - Removed the pre-init dependency on fct_cc_threads_table()/fct_cc_messages_table() from activation and plugins_loaded schema checks; this was capable of being caught as a misleading database migration failure during activation. - Extended current-schema legacy recognition through B02j. - Added a metadata-only B02 installation detector for folder-identity migrations. - Existing B02 activation updates only the schema/release markers; clean installs retain full schema creation and safety verification. - Package root remains permanently First Class Track/. First Class Track V1.0-B02j - Customer Communications now uses a three-pane native messaging workspace: folder/source navigation, searchable thread list, and active conversation. - Added compact product/avatar thread rows, latest-message previews, source/order context, and persistent unread/Needs Reply state. - Added eBay/Gmail/Fahmah/General source navigation plus Sent and Archive views. - eBay notification-wrapper HTML is minimized to the actual customer text when confidently detected. - Preserves B02h fast boot and all prior behavior; no database schema bump. First Class Track V1.0-B02h - Decoupled plugin version from database schema version so ordinary ZIP replacements do not replay the full migration/audit path. - B02-series installs bootstrap the schema marker with a lightweight structural check; full migrations run only when actually required. - Clean installs skip the redundant full per-column definition sweep after dbDelta. - Removed invalid settings-table indexes that referenced nonexistent imbDigitString/order_id columns. - Delayed the first five-minute cron run until five minutes after activation to keep activation responsive. - Added schema boot timing to the FCT trace log. - Preserves B02g and all prior behavior. First Class Track V1.0-B02g - Customer Communications transcript now uses a minimalist left/right chat bubble layout instead of stacked email-style cards. - Incoming messages show a customer initial avatar; outgoing Tim/FCT messages align right. - Per-message source remains explicit but is reduced to a small transport label beside the compact local time. - Added Today/Yesterday/date separators and automatic scroll-to-latest on conversation open. - Reply composer is compact and messaging-style while preserving the existing send routes and thread logic. - Preserves B02f and all prior behavior. First Class Track V1.0-B02f - Shipping-label PDF popups now use a new unique browser window for every print job instead of the reusable "Printing Labels" target. - eBay Orders and manual address printing pre-open the label window during the user's click, preserving browser popup permission across asynchronous PDF generation. - Stale/unfinished placeholder windows are closed before a new job; completed older PDF windows are never reused by later jobs. - If a browser still blocks the PDF popup, the affected row receives a direct clickable shipping-label PDF link instead of silently requiring DevTools. - Legacy upload printing uses the same print-window manager when available, and packing-slip windows also receive unique names. - Preserves V1.0-B02e and all prior behavior. First Class Track V1.0-B02e - Puerto Rico Economy/First-Class imports are no longer rejected solely because order/physical-shipment value exceeds $25. - Added authoritative PR destination helper to the platform import API. - Per-order and combined-shipment $25 checks retain existing behavior for non-PR destinations. - Preserves V1.0-B02d and prior behavior.
Site Wide Cookie Policy
We and our partners use various technologies to collect and store information when you visit the First Class Track website, this may include using cookies or similar technologies to identify your browser or device. We also use these technologies to collect and store information when you interact with services we offer to our partners, such as advertising services or analytics. All of those processes are meant to improve your user experience and the overall quality of our services. We keep your information private and safe — and put you in control.