This Is Why I'm Broke
thisiswhyimbroke.com — Internet-flotsam product aggregator. Quality varies wildly but the genuinely-novel finds are hard to get elsewhere. WebFetch and curl both hit an empty Angular SPA shell as of 2026-06-21, but /feed returns a full, fresh RSS feed — validated 2026-07-03; switched to fetch:feed. 2026-08-01: recording the item-level path explicitly, because guessing it wrong cost a run. The RSS feed carries titles and links but EMPTY <description> elements, and the product pages are still an Angular shell, so the only way to get price, outbound link and stock is GET https://www.thisiswhyimbroke.com/api/posts/<slug> (note the plural 'posts' — /api/product/<slug> returns the SPA shell with HTTP 200 and looks like a block). Second signal worth acting on: of 14 in-window items on 2026-08-01, 13 returned "unavailable":1 / "stock":0 (real estate listings, auction lots, and republished old posts), and exactly one was genuinely buyable. Check the stock flags before writing anything. 2026-08-16: stock-flag discipline confirmed again — of 6 in-window items pulled via /api/posts/<slug>, five returned "unavailable":1 / "stock":0 (republished 2014-era posts, an Etsy sold-out listing, a VRBO rental) and exactly one (medieval-castle-murphy-bed) was live. Check the flags before writing; the feed alone will mislead you. 2026-08-17: third measurement, and the ratio got worse — **all 14 in-window feed items were out of stock.** Eight were probed individually via /api/posts/<slug> (the-dispensing-water-lamp, bitcoin-lottery-miner, modular-smart-lighting-panels, cthulu-wall-lamp, black-cat-knowledge-poster, the-levitating-sneaker-display, bean-bag-onesies, panasonic-japanese-microwave) and every one returned "unavailable":1 / "stock":0 with an empty outbound URL. Zero finds. The 08-01 and 08-16 notes called this the source's normal state; it is now measured three times. Do not spend a run's budget probing more than a handful — check flags, take what is live, move on. 2026-08-18: **the 08-01/08-16/08-17 stock-flag rule is wrong and is corrected here.** Six in-window items were probed via /api/posts/<slug> and all six returned "unavailable":1 / "stock":0 — but this time the outbound URLs were populated, and checking one against the merchant disproved the flag: the-dispensing-water-lamp is flagged unavailable while SYPS sells the V3 HydraLamp right now in four colourways (sypshydration.com/products/hydralamp.json, published, 4 variants), and TIWIB's $174.99 is stale against the maker's $124.99. A flag that reads unavailable on 100% of a daily-publishing aggregator's output is a broken field, not a sold-out catalogue — which means the 08-17 run's 'all 14 out of stock, zero finds' conclusion was probably wrong too. **New rule: treat unavailable/stock as advisory only. Check the flags, then, for any item that actually looks good, open the merchant's own site before dropping it.** Response shape note: fields live under a top-level "post" object, not at the root. 2026-08-27: product pages are an Angular shell that returns a JS-rendered 404 to curl (og tags come back as literal {{::og.image}} placeholders), so the feed is the only usable path — and it carries the full description, the price and a 640x533 CDN image, which is enough. Outbound links are affiliate or Kickstarter wrappers: resolve the target before writing, and drop anything that lands on a crowdfunding page. 2026-08-29: feed path reconfirmed — product pages still serve the Angular shell with literal {{::og.image}} placeholders, while the feed carries the full description, the price and a 640x533 CDN image per item. **New standing instruction, learned this run: the outbound Amazon link in the feed is not proof of the product.** boat-motor-coffee-stirrer's ASIN (B0CRCJ5ZHK) checked out exactly — The Motor Mixer by HMC, matching the image filename's 'hoyt-mercantile-co' — but stick-on-shoe-soles is captioned as Nakefit while its ASIN (B0B14LGLQZ) resolves to an unbranded 'Beach Foot Pads Barefoot 3 Packs' listing, and nakefit.com no longer serves a product page. Verify the ASIN resolves to the named maker before carrying the link, and drop the item when the maker cannot be confirmed at all. 2026-09-01: **the /api/posts/<slug> path from 08-01 still works and is now the only way to tell a live post from a dead one.** Re-confirmed on three slugs today (HTTP 200, 581–684 bytes of clean JSON with link, price, stock and unavailable flags). The reason it matters more than before: the SPA post pages now return an **identical 5,583-byte mustache template on HTTP 200 for every slug, including nonsense ones** — https://www.thisiswhyimbroke.com/this-slug-does-not-exist-xyz123 is byte-identical to a real post, so a prober that checks status or size cannot fail honestly (the chonkbase.net failure mode, recorded 08-29). Stock ratio today: of three in-window items probed, one live (radioactive-uranium-marbles, stock 1) and two at stock 0. Also note the `link` field is often a linksynergy/Etsy affiliate deeplink rather than a maker URL — resolve to the first-party seller before writing. 2026-09-02: /api/posts/<slug> re-confirmed on three slugs (HTTP 200, clean JSON under the top-level 'post' key). **The 09-01 affiliate-deeplink note gets its operational form here: the real destination is in the `murl` query parameter of the click.linksynergy.com URL, percent-decoded** — that is how metal-venus-flytrap-garden-stake got a first-party etsy.com/listing/... link instead of a tracking wrapper. Also measured: the CDN caps out at the feed's own `_400x333` thumbnail. cdn.thisiswhyimbroke.com/images/<slug>.jpg and the bare cdn path both return HTTP 403 with an XML error body, so `thumb/<slug>_400x333.jpg` is the largest available and sits exactly on the hero floor. One kill: 3d-printed-action-figures-of-yourself points at an Amazon *search* URL rather than a product, which fails the traceable-to-a-real-thing bar.