{"id":7459,"date":"2026-08-13T12:45:48","date_gmt":"2026-08-13T12:45:48","guid":{"rendered":"https:\/\/tappyli.com\/?p=7459"},"modified":"2026-08-13T12:45:48","modified_gmt":"2026-08-13T12:45:48","slug":"my-husbands-friend-yelled-you-fat-idiot-in-front-of-everyone-and-laughed","status":"publish","type":"post","link":"https:\/\/tappyli.com\/?p=7459","title":{"rendered":"\u201cMy husband\u2019s friend yelled, \u2018You fat idiot!\u2019 in front of everyone and laughed"},"content":{"rendered":"<div class=\"qMYqUG_convSearchResultHighlightRoot\">\n<div class=\"\" data-turn-id-container=\"request-6a7bf4d3-2934-83ed-981d-0fed37fd7bf2-4\" data-is-intersecting=\"true\">\n<section class=\"text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-6a7bf4d3-2934-83ed-981d-0fed37fd7bf2-4\" data-turn-id-container=\"request-6a7bf4d3-2934-83ed-981d-0fed37fd7bf2-4\" data-testid=\"conversation-turn-48\" data-turn=\"assistant\">\n<div class=\"text-base my-auto mx-auto pb-8 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\">\n<div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" data-conversation-screenshot-content=\"\">\n<div class=\"flex max-w-full flex-col gap-4 grow\">\n<div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"ab42e542-81da-488e-bcc4-f08e79078618\" data-message-model-slug=\"gpt-5-6-instant\" data-turn-start-message=\"true\">\n<div class=\"flex w-full flex-col gap-1 empty:hidden\">\n<div class=\"markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling\">\n<p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"7171\" data-end=\"7206\">At ten that morning, Olivia called.<\/p>\n<p data-start=\"7208\" data-end=\"7231\">\u201cDo you have a minute?\u201d<\/p>\n<p data-start=\"7233\" data-end=\"7279\">I was decorating cupcakes in the back kitchen.<\/p>\n<p data-start=\"7281\" data-end=\"7288\">\u201cSure.\u201d<\/p>\n<p data-start=\"7290\" data-end=\"7336\">\u201cBreeze Media sent over the renewal proposal.\u201d<\/p>\n<p data-start=\"7338\" data-end=\"7348\">I stopped.<\/p>\n<p data-start=\"7350\" data-end=\"7386\">Our contract expired in three weeks.<\/p>\n<p data-start=\"7388\" data-end=\"7521\">Normally, I approved the renewal without much thought. Dennis\u2019s agency did good work, and his employees had never caused me problems.<\/p>\n<p data-start=\"7523\" data-end=\"7545\">\u201cSend me the numbers.\u201d<\/p>\n<p data-start=\"7547\" data-end=\"7564\">She emailed them.<\/p>\n<p data-start=\"7566\" data-end=\"7606\">Dennis wanted a twelve-percent increase.<\/p>\n<p data-start=\"7608\" data-end=\"7645\">I stared at the proposal for a while.<\/p>\n<p data-start=\"7647\" data-end=\"7713\">Then I told Olivia something I should have told her years earlier.<\/p>\n<p data-start=\"7715\" data-end=\"7740\">\u201cGet two competing bids.\u201d<\/p>\n<p data-start=\"7742\" data-end=\"7764\">She sounded surprised.<\/p>\n<p data-start=\"7766\" data-end=\"7790\">\u201cAre we replacing them?\u201d<\/p>\n<p data-start=\"7792\" data-end=\"7811\">\u201cI don\u2019t know yet.\u201d<\/p>\n<p data-start=\"7813\" data-end=\"7839\">That distinction mattered.<\/p>\n<p data-start=\"7841\" data-end=\"7914\">I wasn&#8217;t going to destroy Dennis\u2019s business because he had humiliated me.<\/p>\n<p data-start=\"7916\" data-end=\"7954\">That would make me no better than him.<\/p>\n<p data-start=\"7956\" data-end=\"8048\">But I was finished protecting a business relationship simply because he was Andrew\u2019s friend.<\/p>\n<p data-start=\"8050\" data-end=\"8095\">Three days later, Olivia brought me the bids.<\/p>\n<p data-start=\"8097\" data-end=\"8168\">One agency offered nearly identical services for eighteen percent less.<\/p>\n<p data-start=\"8170\" data-end=\"8265\">Another offered better analytics and faster turnaround for roughly what we were already paying.<\/p>\n<p data-start=\"8267\" data-end=\"8301\">The decision suddenly became easy.<\/p>\n<p data-start=\"8303\" data-end=\"8328\">\u201cGo with the second one.\u201d<\/p>\n<p data-start=\"8330\" data-end=\"8344\">Olivia nodded.<\/p>\n<p data-start=\"8346\" data-end=\"8371\">\u201cShould I notify Breeze?\u201d<\/p>\n<p data-start=\"8373\" data-end=\"8386\">\u201cNo. I will.\u201d<\/p>\n<p data-start=\"8388\" data-end=\"8416\">That evening, I told Andrew.<\/p>\n<p data-start=\"8418\" data-end=\"8459\">He stared at me across the kitchen table.<\/p>\n<p data-start=\"8461\" data-end=\"8487\">\u201cYou&#8217;re canceling Dennis?\u201d<\/p>\n<p data-start=\"8489\" data-end=\"8554\">\u201cI\u2019m not canceling Dennis. I&#8217;m not renewing a business contract.\u201d<\/p>\n<p data-start=\"8556\" data-end=\"8582\">\u201cBecause of the birthday?\u201d<\/p>\n<p data-start=\"8584\" data-end=\"8632\">\u201cBecause another agency offered better service.\u201d<\/p>\n<p data-start=\"8634\" data-end=\"8658\">Andrew knew me too well.<\/p>\n<p data-start=\"8660\" data-end=\"8690\">\u201cAnd because of the birthday.\u201d<\/p>\n<p data-start=\"8692\" data-end=\"8698\">\u201cYes.\u201d<\/p>\n<p data-start=\"8700\" data-end=\"8723\">He rubbed his forehead.<\/p>\n<p data-start=\"8725\" data-end=\"8761\">\u201cIrene, this could really hurt him.\u201d<\/p>\n<p data-start=\"8763\" data-end=\"8798\">That sentence almost made me laugh.<\/p>\n<p data-start=\"8800\" data-end=\"8875\">\u201cFor six years, my company has paid his agency roughly $5,000 every month.\u201d<\/p>\n<p data-start=\"8877\" data-end=\"8896\">Andrew went silent.<\/p>\n<p data-start=\"8898\" data-end=\"8953\">\u201cHe built a team around that account,\u201d he finally said.<\/p>\n<p data-start=\"8955\" data-end=\"9067\">\u201cThen he should have treated the people around him better. Even when he didn&#8217;t know what they could do for him.\u201d<\/p>\n<p data-start=\"9069\" data-end=\"9102\">Two days later, Dennis called me.<\/p>\n<p data-start=\"9104\" data-end=\"9115\">Not Andrew.<\/p>\n<p data-start=\"9117\" data-end=\"9120\">Me.<\/p>\n<p data-start=\"9122\" data-end=\"9157\">\u201cIrene, what the hell is going on?\u201d<\/p>\n<p data-start=\"9159\" data-end=\"9187\">\u201cGood afternoon to you too.\u201d<\/p>\n<p data-start=\"9189\" data-end=\"9223\">\u201cOlivia says you&#8217;re not renewing.\u201d<\/p>\n<p data-start=\"9225\" data-end=\"9242\">\u201cThat&#8217;s correct.\u201d<\/p>\n<p data-start=\"9244\" data-end=\"9262\">There was silence.<\/p>\n<p data-start=\"9264\" data-end=\"9280\">Then he laughed.<\/p>\n<p data-start=\"9282\" data-end=\"9288\">\u201cYou?\u201d<\/p>\n<p data-start=\"9290\" data-end=\"9308\">\u201cYes, Dennis. Me.\u201d<\/p>\n<p data-start=\"9310\" data-end=\"9329\">\u201cWhat do you mean?\u201d<\/p>\n<p data-start=\"9331\" data-end=\"9363\">\u201cConfection Plus is my company.\u201d<\/p>\n<p data-start=\"9365\" data-end=\"9381\">Another silence.<\/p>\n<p data-start=\"9383\" data-end=\"9400\">Longer this time.<\/p>\n<p data-start=\"9402\" data-end=\"9417\">\u201cSweet Things?\u201d<\/p>\n<p data-start=\"9419\" data-end=\"9425\">\u201cYes.\u201d<\/p>\n<p data-start=\"9427\" data-end=\"9456\">\u201cYou own all five locations?\u201d<\/p>\n<p data-start=\"9458\" data-end=\"9465\">\u201cI do.\u201d<\/p>\n<p data-start=\"9467\" data-end=\"9496\">His voice changed completely.<\/p>\n<p data-start=\"9498\" data-end=\"9558\">\u201cWait. You&#8217;re the owner we&#8217;ve been doing all that work for?\u201d<\/p>\n<p data-start=\"9560\" data-end=\"9576\">\u201cFor six years.\u201d<\/p>\n<p data-start=\"9578\" data-end=\"9614\">I could almost hear him calculating.<\/p>\n<p data-start=\"9616\" data-end=\"9637\">The monthly invoices.<\/p>\n<p data-start=\"9639\" data-end=\"9653\">The campaigns.<\/p>\n<p data-start=\"9655\" data-end=\"9678\">The new-store launches.<\/p>\n<p data-start=\"9680\" data-end=\"9690\">All of it.<\/p>\n<p data-start=\"9692\" data-end=\"9716\">\u201cYou&#8217;ve been paying us?\u201d<\/p>\n<p data-start=\"9718\" data-end=\"9735\">\u201cMy company has.\u201d<\/p>\n<p data-start=\"9737\" data-end=\"9765\">\u201cWhy didn&#8217;t Andrew tell me?\u201d<\/p>\n<p data-start=\"9767\" data-end=\"9796\">\u201cBecause I asked him not to.\u201d<\/p>\n<p data-start=\"9798\" data-end=\"9804\">\u201cWhy?\u201d<\/p>\n<p data-start=\"9806\" data-end=\"9862\">\u201cBecause I wanted you to earn the account on your work.\u201d<\/p>\n<p data-start=\"9864\" data-end=\"9893\">His breathing became audible.<\/p>\n<p data-start=\"9895\" data-end=\"9916\">\u201cSo this is revenge.\u201d<\/p>\n<p data-start=\"9918\" data-end=\"9923\">\u201cNo.\u201d<\/p>\n<p data-start=\"9925\" data-end=\"9942\">\u201cCome on, Irene.\u201d<\/p>\n<p data-start=\"9944\" data-end=\"10045\">\u201cIf it were revenge, I would have terminated the contract years ago. I&#8217;m letting it expire normally.\u201d<\/p>\n<p data-start=\"10047\" data-end=\"10088\">\u201cYou know what this account means to us.\u201d<\/p>\n<p data-start=\"10090\" data-end=\"10097\">\u201cI do.\u201d<\/p>\n<p data-start=\"10099\" data-end=\"10127\">\u201cYou know I have employees.\u201d<\/p>\n<p data-start=\"10129\" data-end=\"10279\">\u201cI know that too. Which is why your existing invoices will be paid in full and your team will have the transition period required under the contract.\u201d<\/p>\n<p data-start=\"10281\" data-end=\"10298\">He had no answer.<\/p>\n<p data-start=\"10300\" data-end=\"10324\">Then his voice hardened.<\/p>\n<p data-start=\"10326\" data-end=\"10350\">\u201cAll because of a joke?\u201d<\/p>\n<p data-start=\"10352\" data-end=\"10365\">\u201cNo, Dennis.\u201d<\/p>\n<p data-start=\"10367\" data-end=\"10376\">I paused.<\/p>\n<p data-start=\"10378\" data-end=\"10411\">\u201cBecause of seven years of them.\u201d<\/p>\n<p data-start=\"10413\" data-end=\"10452\">That night, Andrew was unusually quiet.<\/p>\n<p data-start=\"10454\" data-end=\"10498\">Finally, he said, \u201cI should&#8217;ve stopped him.\u201d<\/p>\n<p data-start=\"10500\" data-end=\"10506\">\u201cYes.\u201d<\/p>\n<p data-start=\"10508\" data-end=\"10553\">\u201cI thought ignoring it would keep the peace.\u201d<\/p>\n<p data-start=\"10555\" data-end=\"10576\">\u201cIt kept your peace.\u201d<\/p>\n<p data-start=\"10578\" data-end=\"10590\">That landed.<\/p>\n<p data-start=\"10592\" data-end=\"10607\">He looked down.<\/p>\n<p data-start=\"10609\" data-end=\"10640\">\u201cAnd it cost me mine,\u201d I added.<\/p>\n<p data-start=\"10642\" data-end=\"10688\">A week later, Katie came into my bakery alone.<\/p>\n<p data-start=\"10690\" data-end=\"10731\">She ordered coffee but barely touched it.<\/p>\n<p data-start=\"10733\" data-end=\"10767\">\u201cI wanted to apologize,\u201d she said.<\/p>\n<p data-start=\"10769\" data-end=\"10799\">\u201cYou didn&#8217;t say those things.\u201d<\/p>\n<p data-start=\"10801\" data-end=\"10824\">\u201cNo. I just sat there.\u201d<\/p>\n<p data-start=\"10826\" data-end=\"10862\">I understood exactly what she meant.<\/p>\n<p data-start=\"10864\" data-end=\"10888\">She stared into her cup.<\/p>\n<p data-start=\"10890\" data-end=\"10913\">\u201cHe does it to me too.\u201d<\/p>\n<p data-start=\"10915\" data-end=\"10933\">That surprised me.<\/p>\n<p data-start=\"10935\" data-end=\"10958\">Not jokes about weight.<\/p>\n<p data-start=\"10960\" data-end=\"10972\">Corrections.<\/p>\n<p data-start=\"10974\" data-end=\"11005\">Humiliation disguised as humor.<\/p>\n<p data-start=\"11007\" data-end=\"11080\">Little comments designed to make everyone laugh while she became quieter.<\/p>\n<p data-start=\"11082\" data-end=\"11155\">Suddenly I understood why Katie had spent seven years studying her plate.<\/p>\n<p data-start=\"11157\" data-end=\"11209\">Before leaving, she said something I still remember.<\/p>\n<p data-start=\"11211\" data-end=\"11329\">\u201cWhen you picked up that cake and walked out, I realized nobody was actually forcing me to keep sitting there either.\u201d<\/p>\n<p data-start=\"11331\" data-end=\"11351\">Three months passed.<\/p>\n<p data-start=\"11353\" data-end=\"11383\">The new agency performed well.<\/p>\n<p data-start=\"11385\" data-end=\"11420\">Dennis\u2019s business did not collapse.<\/p>\n<p data-start=\"11422\" data-end=\"11506\">He lost one major client and had to reduce some expenses, but Breeze Media survived.<\/p>\n<p data-start=\"11508\" data-end=\"11561\">More importantly, Dennis stopped coming to our house.<\/p>\n<p data-start=\"11563\" data-end=\"11604\">Andrew continued seeing him occasionally.<\/p>\n<p data-start=\"11606\" data-end=\"11626\">That was his choice.<\/p>\n<p data-start=\"11628\" data-end=\"11656\">But there was one condition.<\/p>\n<p data-start=\"11658\" data-end=\"11751\">I was no longer expected to sit at a table and accept disrespect to protect their friendship.<\/p>\n<p data-start=\"11753\" data-end=\"11813\">Then, one Saturday afternoon, Dennis appeared at the bakery.<\/p>\n<p data-start=\"11815\" data-end=\"11839\">He looked uncomfortable.<\/p>\n<p data-start=\"11841\" data-end=\"11853\">No audience.<\/p>\n<p data-start=\"11855\" data-end=\"11863\">No wine.<\/p>\n<p data-start=\"11865\" data-end=\"11902\">No laughter waiting behind his words.<\/p>\n<p data-start=\"11904\" data-end=\"11928\">\u201cI was an ass,\u201d he said.<\/p>\n<p data-start=\"11930\" data-end=\"11939\">I waited.<\/p>\n<p data-start=\"11941\" data-end=\"11953\">\u201cFor years.\u201d<\/p>\n<p data-start=\"11955\" data-end=\"11961\">\u201cYes.\u201d<\/p>\n<p data-start=\"11963\" data-end=\"12022\">\u201cI thought because you laughed sometimes, you didn&#8217;t care.\u201d<\/p>\n<p data-start=\"12024\" data-end=\"12062\">\u201cI laughed because everyone else did.\u201d<\/p>\n<p data-start=\"12064\" data-end=\"12081\">He nodded slowly.<\/p>\n<p data-start=\"12083\" data-end=\"12100\">\u201cI get that now.\u201d<\/p>\n<p data-start=\"12102\" data-end=\"12130\">It wasn&#8217;t a perfect apology.<\/p>\n<p data-start=\"12132\" data-end=\"12181\">But it was the first real one he&#8217;d ever given me.<\/p>\n<p data-start=\"12183\" data-end=\"12233\">\u201cDid losing the contract teach you that?\u201d I asked.<\/p>\n<p data-start=\"12235\" data-end=\"12253\">He shook his head.<\/p>\n<p data-start=\"12255\" data-end=\"12289\">\u201cKatie leaving for two weeks did.\u201d<\/p>\n<p data-start=\"12291\" data-end=\"12309\">That surprised me.<\/p>\n<p data-start=\"12311\" data-end=\"12365\">\u201cShe came back,\u201d he added. \u201cBut things are different.\u201d<\/p>\n<p data-start=\"12367\" data-end=\"12376\">I nodded.<\/p>\n<p data-start=\"12378\" data-end=\"12399\">\u201cSo are things here.\u201d<\/p>\n<p data-start=\"12401\" data-end=\"12415\">He understood.<\/p>\n<p data-start=\"12417\" data-end=\"12460\">Dennis never got my company\u2019s account back.<\/p>\n<p data-start=\"12462\" data-end=\"12494\">Business wasn&#8217;t an apology gift.<\/p>\n<p data-start=\"12496\" data-end=\"12554\">But months later, we were all at Andrew\u2019s birthday dinner.<\/p>\n<p data-start=\"12556\" data-end=\"12573\">Dennis was there.<\/p>\n<p data-start=\"12575\" data-end=\"12605\">At one point, dessert arrived.<\/p>\n<p data-start=\"12607\" data-end=\"12649\">He looked at my slice of cake, then at me.<\/p>\n<p data-start=\"12651\" data-end=\"12697\">For half a second, I saw the old joke forming.<\/p>\n<p data-start=\"12699\" data-end=\"12723\">Then he stopped himself.<\/p>\n<p data-start=\"12725\" data-end=\"12755\">\u201cLooks good,\u201d he said instead.<\/p>\n<p data-start=\"12757\" data-end=\"12765\">\u201cIt is.\u201d<\/p>\n<p data-start=\"12767\" data-end=\"12788\">And I ate every bite.<\/p>\n<p data-start=\"12790\" data-end=\"12886\">For years, I&#8217;d thought keeping the peace meant learning not to react when someone humiliated me.<\/p>\n<p data-start=\"12888\" data-end=\"12905\">I had been wrong.<\/p>\n<p data-start=\"12907\" data-end=\"12965\" data-is-last-node=\"\" data-is-only-node=\"\">Sometimes peace begins the moment you stop laughing along.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"z-0 flex min-h-[46px] justify-start\"><\/div>\n<div class=\"mt-3 w-full empty:hidden has-[&gt;_:empty]:hidden\">\n<div class=\"text-center\"><\/div>\n<\/div>\n<\/div>\n<div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1\" data-conversation-screenshot-content=\"\">\n<div><\/div>\n<\/div>\n<\/div>\n<\/section>\n<\/div>\n<\/div>\n<div class=\"pointer-events-none -mt-px h-px translate-y-(--scroll-root-safe-area-inset-bottom)\" aria-hidden=\"true\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>At ten that morning, Olivia called. \u201cDo you have a minute?\u201d I was decorating cupcakes in the back kitchen. \u201cSure.\u201d \u201cBreeze Media sent over the renewal proposal.\u201d I stopped. Our contract expired in three weeks. Normally, I approved the renewal without much thought. Dennis\u2019s agency did good work, and his employees had never caused me [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5183,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-7459","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-interesting"],"_links":{"self":[{"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/posts\/7459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tappyli.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7459"}],"version-history":[{"count":1,"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/posts\/7459\/revisions"}],"predecessor-version":[{"id":7460,"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/posts\/7459\/revisions\/7460"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tappyli.com\/index.php?rest_route=\/wp\/v2\/media\/5183"}],"wp:attachment":[{"href":"https:\/\/tappyli.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tappyli.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tappyli.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}