Commit history for src/fns
- Move D1 hot paths onto Durable Objects: MCP usage, stars, upvotes and pack bytes accumulate in Counters; notification fan-out batches visibility and idempotent inserts; email budget lives in UserInbox; runner API authorizes from Runner state and purges finished jobs; McpHub caches access checks; flush alarms back off and dead-letter poison rows; activity rows land with their writes.ecf62c9⌁taigrr committed
2d7fafa⌁
- Harden hosting cost controls per review: GC re-checks before delete, aborts on unreadable manifests and takes a lease; custom domain grace covers pre-existing and ungranted domains, lapse/reconcile sweeps can't stall, quantity follows transfers and teardown, duplicate add-ons are cancelled, verified domains never expire; Pages follows the current repo owner; aliases are per-PR, reserved and dropped with their preview.9dc4854⌁taigrr committed
- Add hosting cost controls: same-day hard caps from counter flushes, metered Pages traffic with plan caps, resumable R2 object GC, SITES_ENABLED/PAGES_ENABLED kill switches with admin hosting suspension, and a global daily dynamic-site ceiling.1a38b42⌁taigrr committed
- Sell custom domains as a per-domain Stripe add-on: gate new domains on it (or a plan flag/admin grant without billing), cap 25 per account, sync quantity, release domains after a lapsed add-on's grace, and delete Cloudflare hostnames on expired claims, private Pages, repo and org deletion.9a3b4a9⌁taigrr committed
- Add pr-<N> preview aliases that follow a pull request's latest branch preview and drop on close, plus opt-in immutable <sha7> commit previews (last 5 per PR).110dfda⌁taigrr committed
- fixup stacks, fns5858d70⌁taigrr committed
425a731⌁
- Add legal pages, signup terms acceptance, self-service account deletion and data export so the public forge meets launch compliance basics; PostHog runs cookieless so no cookie banner is needed.abe2e9c⌁taigrr committed
- Harden email replies, editor container billing and lifecycle, MCP merge/approval confirmation, GitHub pull mirrors and BYOK keys (INT-P2..P21)fa13453⌁taigrr committed
- Reject web and REST settings writes on archived repositories while keeping removals, revokes and make-private available.6c13c42⌁taigrr committed
- Require fork PR approval on push unless author, head owner and pusher are all trusted; record every rerun's parent95f19f9⌁taigrr committed
- Gate remaining admin REST writes on archived repos, hide owner runners from repo admins on the web, and make the last-owner guard atomic.61438e0⌁taigrr committed
- Harden production deploys: config split with boot assertions, admin bootstrap, security headers, error maskinga76edca⌁taigrr committed
- Fix pre-deploy authz findings: transfers need admin on both accounts, archived and scope gates on admin REST writes, inbox and dashboard filtered by current access, revocation purges assignments and notifications, missing rate limits.ed881e4⌁taigrr committed
- Enforce the spending limit across meters inside the reservation transaction so concurrent holds cannot jointly overshoot it, and let admin-set plans stick until an admin hands the account back to Stripe billing.192c134⌁taigrr committed
- Close pre-deploy auth gaps: deploy tokens die with repo transfers, password resets and lost admin; token revocation cascades through every descendant; agent tokens minted over REST stay within the caller's grant; TOTP failures lock out persistently; login, email removal, passkey counters, signing-key lookup and sign-out-everywhere hardened.c9c6455⌁taigrr committed
- Close billing abuse gaps before launch: stop AI calls once tokens are spent, keep org billing owner-only (admins view-only), key rate limits on the IPv6 /64, withhold compute and AI from unverified free accounts and their orgs, and rate-limit scratch git mode and GitHub sign-ups.9058348⌁taigrr committed
- Generate deterministic lava-lamp avatars client-side in place of initials, static by default and drifting on hover, show owner avatars in repo lists, and keep unfinished repos and admin-only private repos out of explore.8e9a6c6⌁taigrr committed
- Merge roadmap/upsellefa5b44⌁taigrr committed
- Merge roadmap/pricing-posthog186686d⌁taigrr committed
- Merge roadmap/stripe-billinga22ce03⌁taigrr committed
- abuse and metering486d635⌁taigrr committed
- Merge roadmap/mergefix-proposals1e3de79⌁taigrr committed
- Show who reacted when hovering a reaction, loading at most five names on demand and summarizing the rest as a count so huge reaction totals stay cheap.486e8a2⌁taigrr committed
a360a78⌁
- Open a paginated day breakdown under the contribution graph when a day is clicked, and let users show their private contributions to visitors as anonymous counts or keep them hidden.aa762f9⌁taigrr committed
- Show commits as their author's account wherever the commit email is one of that account's verified addresses, instead of the raw git name with a mismatched avatar.4e89c38⌁taigrr committed
- Credit contributions by verified commit email from a per-repo commit index, let users keep several verified addresses, make mentions survive renames, add repo Insights, and move per-request counters, unread counts, webhook logs and git/download metering off D1 into Durable Objects so write load scales with entities instead of traffic.9517d99⌁taigrr committed
- Security: fix post-audit feature review findings POST-B1..B7 (AI suggestions billed to the viewer, no owner usage leak, container plan gate on sync/preview, safe admin stop, one background tree walk per key, token imports always private).81d0558⌁taigrr committed