Repository navigation
Conversation
lib/scrape.ts and the Forward Email webhook go through @profullstack/ai-providers 0.2.0 generateObject: c0mpute peer network first, Anthropic and OpenAI as paid fallbacks. The email path still falls back to the rules on any model failure, and stays inside the route's maxDuration. The reveal-code agent loop (tool calling over MCP) stays on Anthropic. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
ThreatCrush Security Scan40 finding(s) MEDIUM: 33 | LOW: 7
Snippets are redacted; ThreatCrush never prints matched credential material. |
Contributor
Author
|
Closed (not merged) on purpose: CI is green, but c0upons.com is a stopped site and merging deploys it. gh-prs-merge sweeps merge any open green PR, so this is parked closed. Branch |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Do not merge while c0upons.com is stopped. The site's containers on dev2 are stopped on purpose (a dropped site). Merging to master triggers
deploy-dev2.yml, which deploys and restarts it.What moved to c0mpute
Both through
@profullstack/ai-providers0.2.0 (pinned exact)generateObject: c0mpute peer nodes first, then Anthropic and OpenAI alternating as paid fallbacks. The router parks a provider that is out of credit, which replaces the hand-rolled one-hour Anthropic block.apps/web/lib/scrape.tsscrapeListing(POST/api/scrape, metadata for a submitted deal URL). Same JSON Schema, now validated byparseListing(every field a string or null) with one repair turn per provider. No longer throwsANTHROPIC_API_KEY is not set. Timeout 170 s, routemaxDuration60 -> 180 s.apps/web/app/api/webhooks/email/route.tsoffers extraction for coupons@ mail. The model is always offered now (c0mpute needs no vendor key); any failure still falls back to the rules inextractOffers, as before. Timeout 90 s, inside the route's 120 smaxDuration, so Forward Email still gets an answer and does not retry. Anthropic fallback keepsclaude-haiku-4-5.Stays on the vendor
lib/reveal-code.ts/lib/reveal-coupon.ts: the reveal agent is an Anthropic betatoolRunnerloop over Obscura MCP browser tools. c0mpute has no tool calling, so it is untouched and still needsANTHROPIC_API_KEY; without one the scripted walk (reveal-heuristic.ts) runs, as today.Fallback
Both keys are dead today. Scrape fails with the same 502 as now if c0mpute fails. Email falls back to the rules, as now.
Privacy
Scrape sends a public product page. The email path sends deal newsletters that arrive at our own coupons@ alias (vendor marketing mail, not user content). No private user content goes to peer nodes.
Deploy notes
C0MPUTE_API_KEY(fleetik_live_account key) should go in dev2app.env(or the root.envthatloadRootEnvreads) before this deploys; without it c0mpute runs on the 10 a day free tier.Tests
bun run typecheckclean,bun run test91 pass. CI runs the build.🤖 Generated with Claude Code