Changelog

What's new in Genfeed.

v0.1.72

0.1.72 - 2026-09-06

Features

  • close the agent failure feedback loop (#4478)
  • notifications: add in-app notification inbox (#4482)
  • app: show version, channel, and release changelog (#4486)
  • workflows: persist estimates and reconcile actual costs (#4480)
  • workflows: complete daily account publishing (#4502)
  • per-brand watermarked image and video downloads (#4501)
  • knowledge: ingest sources into canonical records with cited retrieval (#4509)
  • workflows: add dynamic video localization and composition (#4503)

Fixes

  • notifications: restore inbox and CI reporter contracts (#4487)
  • extension: route actions to current API contracts (#4491)
  • e2e: use canonical outreach routes in nightly checks (#4490)
  • repair shared page retries and bulk action cleanup (#4488)
  • show empty publishing calendar without duplicate toolbar (#4493)
  • preserve approved action outcomes during persistence retry (#4489)
  • trends: expose provider health and keep reads cache-only (#4479)
  • inspector: add closable panel tabs and full asset previews (#4495)
  • qa: repair asset previews and workflow run context (#4485)
  • media: consolidate asset previews and playback across product surfaces (#4494)
  • agent: make required approvals actionable and enforce safe defaults (#4496)
  • messages: brand-scope outreach sequence navigation (#4505)
  • ingredients: reject watermark logos without an image MIME type (#4508)
  • app: polish shell, tasks, runs, library, integrations, settings, and sentry paths (#4504)

Tests

  • e2e: publishing shell contract expects the new post menu (#4519)

v0.1.71

0.1.71 - 2026-09-05

Features

  • models: integrate MiniMax H3 Max and Replicate contracts (#4206)
  • messages: make inbox conversation-first (#4230)
  • models: add lifecycle-aware OpenRouter routing (#4236)
  • website: make product and output the proof (#4228)
  • library: rebuild the asset browser grid, inspector, and canvas view (#4318)
  • discovery: signal desk overview with light table view (#4317)
  • publishing: overview as a next-24h operations desk (#4325)
  • workspace-shell: stack the inspector rail instead of tabbing it (#4326)
  • ui: per-platform post preview renderers (#4331)
  • publishing: list and board view modes (#4335)
  • publishing: release drawer with per-target actions and URL selection (#4327)
  • publishing: wire per-platform preview renderers into review, post editor, and drawer (#4336)
  • campaigns: add the publish content campaign domain and REST collection (#4339)
  • publishing: add account grid view and overview health card (#4353)
  • copy: reserve Campaign for Publish content programs (#4365)
  • publishing: add the Publish Campaign desk (#4366)
  • campaigns: run publish content campaign lifecycle (#4367)
  • campaigns: wire generate, start, pause, and complete on the Publish desk (#4377)
  • actions: agent tool mutation policy (#4380)
  • agent: FR-1 run state, cross-thread runs, and decision UI (#4379)
  • analytics: add account fleet analytics (#4384)
  • workspace: triage-deck overview with shared ListRow and darker card surface (#4400)
  • workflows: run Brand Remix generation as a workflow execution (#4401)
  • website: reveal homepage sections on scroll (#4411)
  • skills: add Genfeed brand showcase render prompt (#4413)
  • ui: apply interface-feel audit fixes (#4415)
  • knowledge: model scoped sources and spaces (#4449)
  • connect: default MCP setup to browser authorization (#4471)

Fixes

  • ci: reuse in-flight full suite evidence (#4211)
  • ui: unify sidebar collapse and navigation spacing (#4215)
  • app: synchronize organization across tabs (#4216)
  • app: keep Automation usable without a selected brand (#4227)
  • users: show admin activity dates (#4229)
  • remediate production Sentry errors (#4231)
  • studio: preserve edited highlight content during clip generation (#4232)
  • library: unify scoped asset browser (#4214)
  • ci: restore combined master baseline (#4235)
  • agent: route explicit media without chat inference (#4226)
  • ci: provide message catalog in MessagesPage tests (#4239)
  • models: refresh lifecycle metadata contracts (#4238)
  • ci: type studio preview ambient wash intensity (#4241)
  • ci: restore post-merge executable contracts (#4244)
  • models: align public catalog spec contracts (#4242)
  • ci: refresh public route inventory counts (#4246)
  • ci: reconcile post-merge production contracts (#4250)
  • stripe: validate billing portal return path (#4252)
  • ci: deduplicate scheduled failure trackers (#4253)
  • dev: skip automatic worktree dependency installs (#4255)
  • workflows: restore truthful publish controls (#4256)
  • playwright: sanitize execution JSON:API resources (#4257)
  • auth: restore authorized overview shell after login (#4258)
  • ci: repair E2E report artifact merge (#4259)
  • repair residual data and service contracts (#4260)
  • oauth: gate Threads connect on readiness (#4261)
  • security: contain upload source paths (#4262)
  • agent: restore truthful terminal journeys (#4263)
  • prisma: align immutable workflow migration with executors (#4264)
  • ci: restore full-suite permission ceiling (#4267)
  • ci: reconcile runtime complexity ratchet (#4271)
  • agent: restore local image generation (#4277)
  • workflows: restore tenant-scoped execution updates (#4288)
  • ci: stop padding changed-coverage observations (#1849) (#4300)
  • website,docs: remove retired intelligence route and stale ContentRun docs (#4321)
  • lifecycle-emails: keep terminal delivery state on replay (#4311)
  • workflows: abort on lost lease and never strand delay-resumed executions (#4320)
  • billing: replay-safe credit flags and full-page proration (#4316)
  • workers: finalize recurrence and streak when TikTok confirms asynchronously (#4315)
  • app: reject off-origin return_to after OAuth verify (#4314)
  • workflows: stabilize action idempotency keys (#4303)
  • master: repair the three build and ratchet breaks blocking every PR (#4328)
  • ci: align enum, hook, and publishing page specs with the merged #4318 and #4319 behaviour (#4330)
  • agent: make tool confirmation server-owned for create_post and install_official_workflow (#4324)
  • dev: stabilize Portless and restore sidebar logo hover (#4265)
  • ci: green the UI package suite after preview wiring (#4337)
  • e2e: mock brand account-health as a bare array (#4351)
  • stop API and MCP keys inheriting implicit org-admin (#4358)
  • security: close remaining code-scanning alerts (#4359)
  • analytics: isolate tenant analytics reads by organization (#4360)
  • workflows: typed retry, shared topo-sort, AgentRun doc purge (#4362)
  • security: drop revoked Telegram keys and test MCP URL rejection (#4364)
  • workflows: generate action nodes from catalog and drop YouTube agent special-case (#4368)
  • api: shrink tenant-scope baseline and clear master Static Checks debt (#4370)
  • ci: unblock spec-typecheck after Effect removal (#4372)
  • ci: restore master Full Suite after the contracts fold (#4374)
  • ci: resolve authed e2e boot and desktop action types (#4385)
  • use the official Genfeed mark on mobile and IDE (#4388)
  • give PWA maskable icons a real Android safe zone (#4395)
  • ci: resolve combined trunk typecheck and spec fallout (#4396)
  • local QA closeout for shell, PostCSS, and app switcher (#4397)
  • ci: accept snapshot run statuses in stream hooks (#4399)
  • ci: restore trunk format, remotion pin, and model metadata (#4407)
  • app: keep theme CSS contract off marketing-site paths (#4408)
  • ci: restore Static Checks after Campaign and Brand Remix merges (#4410)
  • app: restore Turbopack for local dev and delete dead webpack config (#4416)
  • app: repair agent, composer, and Studio QA (#4414)
  • ci: repair merged master integration (#4430)
  • ci: restore master validation gates (#4431)
  • ci: preserve scheduled failure identities (#4434)
  • articles: parse HTML before text extraction (#4432)
  • workflows: preserve migrated batch identities (#4435)
  • publishing: enforce review contracts (#4433)
  • models: preserve catalog runtime contracts (#4437)
  • publishing: retry TikTok finalization (#4436)
  • campaigns: enforce membership scope (#4440)
  • analytics: isolate account UI request state (#4439)
  • analytics: preserve account metric integrity (#4438)
  • deps: sync UI Lucide peer range in lockfile (#4441)
  • test: wire isolated publish dependencies (#4443)
  • api: bound public YouTube workflow failures (#4445)
  • prisma: index tenant-scoped ad mapping lookups (#4448)
  • ci: allow empty coverage for unchanged surfaces (#4447)
  • complete application-wide QA and consistency pass (#4444)
  • ci: reuse verified artifacts and strengthen release checks (#4469)
  • ci: restore nightly tests and recovery (#4454)
  • ci: report executed E2E evidence accurately (#4462)
  • repair review regressions and remove runtime leftovers (#4456)

Refactoring

  • scheduling: hard cut recurring scheduler split (#4210)
  • workflows: route skills through immutable executions (#4266)
  • cadences: split copy and validation boundaries (#4272)
  • media: split generation and transformation stages (#4278)
  • retire public media runtime scaffolds (#4280)
  • workflows: decompose execution services (#4283)
  • video: decompose batch interpolation controller (#4284)
  • files: extract processing helpers (#4285)
  • integrations: split OAuth refresh orchestration (#4286)
  • integrations: split authorized signal evidence mapping (#4290)
  • batch-generation: split service phases (#4291)
  • workflow-executions: split runtime helpers (#4292)
  • post-groups: extract target operations (#4293)
  • post-groups: split target persistence (#4294)
  • credits: split ledger mutation cores (#4295)
  • brands: split service phases (#4296)
  • llm: split streaming aggregation helpers (#4297)
  • agent: decompose context assembly (#4298)
  • posts: split API generation workflows (#4302)
  • publishing: one posts route with query filters (#4319)
  • post-groups: relocate release-target update phase (#4352)
  • fold @genfeedai/server back into api (#4354)
  • remove re-export compat shims and deslop the last 48h of merges (#4356)
  • finish the api fold leftovers (#4357)
  • remove the Effect runtime (#4371)
  • remove deprecated compatibility surfaces (#4453)
  • ui: consolidate shared controls and workflow dialogs (#4455)
  • ui: unify shared page states and selection UX (#4470)

Documentation

  • update managed inference adapter inventory (#4287)
  • agents: load detailed memory on demand (#4474)

Tests

  • models: seed lifecycle transition guard fixture (#4249)
  • ci: repair coverage ratchet evidence (#4270)
  • ui: provide query client to AgentPanel tests (#4273)
  • ci: restore full-suite coverage gates (#4275)
  • api: restore image generation integration wiring (#4279)
  • workflows: cover remaining branch paths (#4281)
  • agent: provide query client fixtures (#4282)
  • update protected route inventory counts (#4289)
  • release: follow the project memory catalog (#4477)

Build and CI

  • enforce shrinking runtime-complexity debt (#4268)

Maintenance

  • memory: require a ready PR for every fix branch (#4254)
  • memory: record i18n deferral in the catalog rule (#4304)

Other

  • Fold shared type packages (#4369)
  • Drop conventional-commit prefixes from issue titles (#4393)
  • Record the stacked-PR merge-target rule (#4398)

v0.1.70

0.1.70 - 2026-09-01

Features

  • video: ship creative actions (#3870)
  • credits: finish reservation adoption (#4011)
  • cli: build terminal content workspace (#4017)
  • website: rebuild the homepage around published output (#4061)
  • app: unified Generation Setup picker + platform-pinned chat model (#4071)
  • trends: prefer native platform discovery (#4091)
  • migrate planning metadata to native issue fields (#4095)
  • skills-pro: expose authenticated metadata registry (#4090)
  • ads: add brand swipe-file snapshots (#4098)
  • add native referral credit rewards (#4097)
  • skills-pro: enforce tenant entitlements and installs (#4179)
  • app: make Workspace the returning-user home (#4181)
  • tiktok: add native app publish handoff (#4180)
  • threads: add signed account deletion callbacks (#4187)

Fixes

  • ci: report every failing package in test lanes (#3884)
  • ui: normalize dropdown trigger and overlay borders (#3885)
  • agent: prevent duplicate actions across scope changes (#3886)
  • desktop: preserve migration directory errors (#3889)
  • mobile: surface offline queue failures (#3888)
  • api: validate Medium OAuth configuration (#3896)
  • frontend: surface analytics load failures (#3897)
  • frontend: surface workflow node action failures (#3899)
  • frontend: surface task detail action failures (#3900)
  • frontend: surface editor project failures (#3901)
  • ci: isolate parallel server Sentry sourcemaps (#3921)
  • api: scope creative pattern queries (#3913)
  • api: preserve tenant boundaries in optimized queries (#3923)
  • e2e: stabilize full-tier chat and organization flows (#3925)
  • test: use valid creative pattern type (#3926)
  • e2e: persist completed chat actions (#3927)
  • test: align enabled config mock with query (#3930)
  • agent: retain UI action completion by id (#3928)
  • agent: complete source actions on response (#3932)
  • logger: declare async module imports (#3934)
  • build: add Nest webpack checker peer (#3936)
  • desktop: align verified PGlite release pin (#3938)
  • stripe: align API pin with SDK (#3941)
  • stripe: narrow invoice billing reasons (#3945)
  • app: isolate agent brand switches (#3947)
  • api: honor Leonardo generation contract (#3949)
  • agent: translate generation mode labels (#3952)
  • api: decode ElevenLabs audio response (#3953)
  • ci: align product route inventory counts (#3957)
  • workers: align ad sync logger spec types (#3962)
  • test: repair backend spec mocks (#3963)
  • workers: import Vitest mock type (#3966)
  • workers: cast logger constructor mock (#3968)
  • api: complete bot media generation (#3970)
  • ci: prune bot spec baseline (#3972)
  • server: import Vitest mock type (#3974)
  • api: scope clip generation patches and lock OpenAPI metadata (#3975)
  • agent: align package specs with conversation behavior (#3978)
  • files: align Remotion renderer contract (#3981)
  • mcp: track split clip generation controller (#3986)
  • agent: retain completed UI actions across message rebuilds (#3991)
  • api: preserve tenant boundaries in optimized queries (#3992)
  • e2e: isolate full API fixtures (#3994)
  • e2e: intercept unauthenticated bootstrap (#3996)
  • types: restore monorepo verification boundaries (#3997)
  • desktop: fall back to cloud when local startup fails (#4010)
  • qa: consolidate Agent, Studio, and shell fixes (#4013)
  • qa: restore verification after consolidation (#4015)
  • api: make desktop thread sync atomic (#4005)
  • sources: reject posts without external ids (#4006)
  • agent: isolate brand voice action status (#4007)
  • agent: restore the canonical runtime baseline (#4012)
  • trends: restore real content in the trend digest email (#4037)
  • analytics: bucket post analytics dates in UTC (#4068)
  • normalize small correctness contracts (#4079)
  • bots: sanitize bot manager error logs (#4080)
  • trends: calibrate viral scoring curves (#4081)
  • workflows: retire seeded mirrors during version cutover (#4076)
  • stabilize voice clone paths and terminal session effects (#4083)
  • agent: gate campaign transitions on confirmation (#4085)
  • workers: reject relation alias helper reads (#4092)
  • dev: centralize rolling Bun environments (#4089)
  • billing: use real Stripe proration previews (#4096)
  • agent: harden local QA and runtime workflow execution (#4099)
  • clear Project 12 bug regressions (#4114)
  • prisma: keep postinstall as prisma generate for server image (#4116)
  • remediate confirmed 14-day review findings (#4117)
  • oauth: send flat connect and verify request bodies (#4172)
  • sentry: disable performance tracing (#4141)
  • trends: make social ingestion native-first (#4170)
  • workflows: recover stale claims and gate system visibility (#4175)
  • close agent and workspace QA regressions (#4150)
  • ci: restore authenticated and core app smoke (#4184)
  • prisma: match retired system workflow provenance (#4192)
  • workflows: remove legacy template steps contract (#4195)
  • article-editor: remove duplicate preview and enhance flow (#4188)
  • agent: remove undispatched run tool (#4196)
  • article-editor: complete retired enhancement cleanup (#4200)
  • ci: raise environment scan command buffer (#4199)
  • prisma: preserve retired workflow history in v70 migration (#4208)

Performance

  • api: batch desktop thread lookups (#3893)
  • api: aggregate subscription attribution analytics (#3902)
  • api: parallelize creator imports (#3903)
  • frontend: bound workflow batch uploads (#3904)
  • api: aggregate BYOK usage in Postgres (#3905)
  • api: parallelize reference lookups (#3890)
  • api: batch auth organization resolution (#3891)
  • api: aggregate tracked link click stats (#3894)
  • api: filter ad mappings in Postgres (#3907)
  • api: target skill receipt lookups (#3909)
  • api: target default profile updates (#3910)
  • api: target preset key lookups (#3911)
  • api: filter ad optimization queries (#3912)
  • api: filter agent strategy queries (#3914)
  • api: filter stored forecasts in Postgres (#3915)
  • api: target customer instance routing (#3917)
  • api: target monitored account lookup (#3918)
  • api: paginate ad upload jobs in Postgres (#3919)
  • api: aggregate article analytics in Postgres (#3920)
  • api: filter active trends in Postgres (#3922)
  • ci: halve per-PR compute and make full-suite the single master-push pipeline (#4036)
  • web: remediate the 2026-08-29 frontend performance audit (#4054)
  • app,website: add route-segment loading shells (#4078)

Refactoring

  • api: remove unused platform comparison entity (#3895)
  • frontend: remove commented-out code (#3898)
  • api: remove scalar type escapes (#3955)
  • api: split clip project generation controller (#3969)
  • workflows: hard cut to action-backed workflow executions (#4057)
  • remove provable no-ops and dead code (#4084)
  • deduplicate literal implementations (#4086)
  • centralize files and workers error messages (#4088)
  • remove low-value narrated comments (#4094)
  • app: shell-first loading across the product app (#4102)
  • config: share Google OAuth credentials (#4173)

Documentation

  • repair generation setup hook link (#4093)
  • oss: retire GitHub Sponsors CTA (#4119)
  • specify agent fleet runtime API (#4164)
  • add OAuth provider provisioning runbook (#4171)

Tests

  • api: restore Stripe webhook E2E providers (#4101)
  • e2e: assert workflow controls before modal menu (#4186)
  • design: add matched DESIGN.md evaluation seed (#4194)

Dependencies

  • deps: hold @sentry/* at 10.71.0 (#4075)
  • deps: weekly deps:update (#4073)

Maintenance

  • e2e: simplify Playwright global setup (#3887)
  • mcp: remove stale clip mode comment (#3990)
  • commands: file /bug issues without a confirmation step (#4056)
  • repo: remove dead tunnel URLs and exports (#4077)

v0.1.69

0.1.69 - 2026-08-28

Features

  • ui: enforce the DESIGN.md foundation contract (#3633)
  • billing: add agency cost reporting (#3652)
  • workflows: add timed talking-head scripts (#3692)
  • scheduler: complete API surface parity (#3693)
  • generation: persist categorized run references (#3694)
  • clips: gate remaining clips on hook approval (#3698)
  • agent: add cross-thread conversation transfers (#3700)
  • add vision continuity QA (#3702)
  • api: collect listening topic evidence (#3703)
  • listening: add attributable theme signals (#3707)
  • ci: add scheduled failure tracker contract (#3710)
  • brand: add source-backed Brand OS preview (#3711)
  • listening: add social intelligence inbox (#3718)
  • add secure Brand OS preview funnel (#3726)
  • listening: attribute content outcomes (#3727)
  • studio: add brand-scoped saved looks (#3744)
  • clips: replace Opus workflow end to end (#3792)
  • studio: route Fastlane schedule through release groups (#3825)
  • scheduler: posting sets UI and agent schedule card parity (#3831)
  • billing: unify multi-organization billing accounts (#3833)
  • scheduler: finish remaining post scheduler loop (#3834)
  • e2e: prove isolated-DB publish path (#3842)
  • generation: compile remaining briefs and unlock Strict fidelity
  • generation: compile remaining briefs and unlock Strict fidelity (#3844)

Fixes

  • auth: recover sessions and pin login callbacks (#3626)
  • e2e: repair scheduled Playwright full tier (#3597)
  • oauth: fail closed on social configuration (#3602)
  • ui: correct OAuth connection catalog (#3593)
  • ui: align button, badge, and global motion with the DESIGN.md contract (audit wave 1) (#3603)
  • ui: repair alert foundation contract (#3622)
  • auth: restore production app proxy (#3624)
  • e2e: isolate nightly clip and API fixtures (#3594)
  • x-ads: migrate connector to OAuth 1.0a (#3599)
  • billing: resolve subscription credits from the Stripe price (#3627)
  • agent: make production generation durable (#3628)
  • website: sanitize public article bylines (#3636)
  • billing: repair master after #3627 and wire browser checkout price IDs (#3638)
  • agent: validate image generation results (#3639)
  • api: harden Higgsfield billing and dispatch (#3640)
  • instagram: return actionable OAuth verification failures (#3641)
  • onboarding: recover fresh account setup (#3642)
  • ci: let weekly dependency updates open one PR (#3644)
  • ci: repair master contract and harness drift (#3643)
  • api: carry sourceActionId through the ingredient write path (#3645)
  • restore localization and package test boundaries (#3647)
  • analytics: preserve cloud funnel telemetry (#3646)
  • generation: preserve canonical brief contracts (#3648)
  • app: synchronize routed organization context (#3649)
  • billing: reconcile Stripe checkout and subscription state (#3650)
  • cli: restore OAuth signal typecheck (#3651)
  • cli: isolate Node runtime types (#3653)
  • ci: repair remaining master typecheck contracts (#3654)
  • ci: type recursive translation stub lookup (#3655)
  • e2e: enforce full-tier Playwright contracts (#3656)
  • config: remove deprecated TypeScript baseUrl (#3657)
  • ci: restore master static and API spec contracts (#3658)
  • e2e: scope Clip Factory routes to mocked brand (#3660)
  • ci: restore remaining master contracts (#3661)
  • e2e: hold logout feedback in pending state (#3662)
  • ci: apply CI tracker labels authoritatively (#3663)
  • ci: restore exact-master test contracts (#3666)
  • api: align MusicDocument with the ingredient row shape (#3665)
  • ci: make Tests Gate cover the spec typecheck ratchet (#3668)
  • ci: remove stale music projection contract (#3670)
  • release: wire Scale checkout price (#3673)
  • app: scope cost usage value assertions (#3674)
  • app: complete integrations icon mock (#3677)
  • workspace: keep inspector closed during route cleanup (#3680)
  • config: keep e2e alias compatible with TypeScript 7 (#3686)
  • agent: restore package CI contracts (#3687)
  • api: restore final CI contracts (#3689)
  • studio: align saved look timestamps (#3782)
  • workflows: preserve video QA URL narrowing (#3784)
  • api: resolve continuity files client (#3785)
  • services: normalize listening inbox queries (#3786)
  • ci: reconcile master contracts and test drift (#3790)
  • clips: guard submitted approval before status access (#3791)
  • ci: reconcile master executable contracts (#3794)
  • ci: repair final master gate failures (#3796)
  • ci: resolve UI token aliases in package tests (#3797)
  • ci: dedupe unlabeled master Tests Gate trackers (#3826)
  • workflows: hydrate canvas edge style from the saved preference (#3828)
  • posts: mint publish approval on every scheduled write (#3832)
  • ci: map billing Prisma enums onto domain types (#3841)
  • workers: keep rebased master crons off @api
  • server: stop @genfeedai/server importing @api
  • api: retarget master files onto moved server helpers
  • server: move leftover siblings webpack could not resolve
  • api: retarget remaining @api imports after sibling moves
  • app: drop duplicate ReleaseGroupsService.create after rebase
  • ci: give server type-check 6GB after the domain move
  • generation: unshadow publish policy and add Schnell ablation
  • generation: read REPLICATE_KEY for Schnell live ablation
  • generation: run Schnell live ablation outside mocked fetch
  • generation: poll Schnell predictions without Prefer wait
  • generation: retry Schnell live predictions on empty output
  • generation: align remaining-brief types and stale CI tests
  • workflows: stop cloning daily trends digest on every deploy
  • workflows: stop cloning the system catalog on every deploy
  • workflows: stop cloning system workflows on every deploy (#3852)
  • desktop: paste source-checkout sign-in codes into the app
  • desktop: stop local mode from hanging with no feedback
  • desktop: send local mode to /desktop/local instead of a blank brand step
  • desktop: hide the titlebar strip on login
  • desktop: do not quit on uncaught write EPIPE
  • desktop: persist PKCE so pasted sign-in codes survive restarts
  • auth: allow unauthenticated desktop PKCE exchange
  • ci: map billing Prisma enums onto domain types
  • ci: split duplicate agent publish policy bindings
  • ci: drop duplicate ReleaseGroupsService.create
  • ci: align scheduler merge types for workers type-check
  • ci: parse engagement Prisma enums and prune stale spec baseline
  • ci: accept Fastlane brandId and baseline remaining spec debt
  • ci: allowlist new system sweeps and record inherited ratchet debt
  • ci: expect reservation settlement in credit deduction jobs
  • ci: typecheck remaining api specs instead of fingerprinting them
  • ci: mock login i18n and align inherited scheduler tests
  • desktop: paste source-checkout sign-in codes into the app (#3809)
  • ci: repair type-check after batch merges
  • e2e: repair isolated-publish imports and agent util export
  • ci: unblock v0.1.69 release without a version bump (#3855)
  • e2e: unblock v0.1.69 release gates (#3871)
  • auth: provision signup member before billing account (#3875)
  • workers: fail release smoke on Nest bootstrap errors (#3877)
  • workers: restore release-proven Nest module graph (#3878)
  • workers: import global cache graph (#3880)
  • deploy: pass API URL into app build (#3883)

Refactoring

  • api: split analytics admin transport (#3691)
  • integrations: decompose platform runtimes (#3695)
  • server: extract OpenRouter integration (#3696)
  • server: extract Hedra integration (#3697)
  • server: extract X Ads domain (#3699)
  • server: add typed credential provider port (#3701)
  • server: extract Beehiiv provider domain (#3704)
  • server: extract Threads service domain (#3705)
  • server: extract Reddit service domain (#3706)
  • server: extract Pinterest service domain (#3709)
  • server: extract Facebook service domain (#3713)
  • server: move Google Ads into server domain (#3716)
  • organizations: split controller operations (#3719)
  • server: extract Mastodon service domain (#3722)
  • server: extract Instagram service domain (#3728)
  • tasks: split planning controller (#3729)
  • api: split posts retry controller (#3731)
  • server: extract TikTok service domain (#3732)
  • api: split clip project highlights controller (#3734)
  • server: extract TikTok Ads service domain (#3735)
  • api: split outreach campaign target operations (#3736)
  • server: extract Higgsfield service domain (#3738)
  • api: split Brands setup controller (#3740)
  • server: extract Fleet service domain (#3743)
  • api: split Prompts transformation operations (#3747)
  • server: extract LinkedIn service domain (#3749)
  • api: split Assets ingestion operations (#3750)
  • api: split Images resize operation (#3752)
  • server: extract Twitter service domain (#3754)
  • files: split audio overlay operation (#3755)
  • api: split Ads Gateway write operations (#3758)
  • api: split Credentials publishing operations (#3760)
  • server: extract YouTube service domain (#3762)
  • api: collapse Agent Workflow transitions (#3764)
  • api: execute action runs via patch (#3766)
  • server: extract publisher domain kernel (#3769)
  • api: extract music generation orchestration (#3772)
  • api: cancel agent runs via patch (#3773)
  • api: split clip project ingestion controller (#3774)
  • api: activate organizations via patch (#3776)
  • images: extract reframe orchestration (#3778)
  • api: patch credential health overrides (#3779)
  • api: split images upscale controller (#3829)
  • api: split videos merge controller (#3830)
  • server: stop workers importing API integration modules
  • server: move worker helper leaves out of API
  • server: move worker kernel types, cache, and provenance
  • server: empty worker @api import baseline
  • server: delete leftover API extraction shims
  • server: empty remaining worker @api imports (#3843)

Documentation

  • infra: correct Redis eviction policy contract (#3675)

Tests

  • playwright: repair full-tier route and mock regressions (#3667)
  • playwright: repair remaining full-tier assertions (#3672)
  • e2e: align remaining full-tier interactions (#3676)
  • e2e: settle final shard interactions (#3678)
  • contexts: hold organization transition state (#3679)
  • ci: restore exact-master unit harness contracts (#3681)
  • api: provide media cost service in image controller (#3683)
  • agent: resolve shared status token aliases (#3684)
  • workspace: mirror committed task query state (#3685)
  • prisma: exercise first-party skill catalog migration (#3690)

Build and CI

  • adopt fair PR validation budget contract (#3592)

Dependencies

  • deps: weekly deps:update (#3637)

Maintenance

  • memory: hold trend reminders until Trends is live
  • memory: hold trend reminders until Trends is live (#3851)
  • ci: update spec-typecheck baseline after batch merges

Other

  • apply biome format to files CI format:check flagged

v0.1.68

0.1.68 - 2026-08-25

Features

  • agent: chat UX polish — stick-to-bottom, autofocus, live thread title, code copy (#3542)
  • generation: route every generation surface through the canonical brief (#3533)
  • models: add Higgsfield Soul + Kling video to the model catalog and generation dispatch (#3549)
  • discover: generic competitor paid-creative pool across every ad archive (#3559)
  • ci: fold changed coverage into test shards and consolidate static checks (#3560)
  • credentials: multiple accounts per platform per brand (#3563)

Fixes

  • youtube: record missing data scope as missing_scope (#3529)
  • e2e: finish the nightly full-tier repair across onboarding, library, and calendar (#3530)
  • app: settings shell, org switch, PWA worker, and array-only mutation APIs (#3546)
  • agent: align orchestrator host thread-title callback with the util contract (#3552)
  • architecture: align route-inventory counts with the settings shell pages (#3551)
  • contexts: restore the promptbar catalog tests' logger double (#3554)
  • app: align voices + editor tests with the array-only modal callbacks (#3553)
  • app: qa closeout for composer, model settings, and org workspace chrome (#3555)
  • close the defects found by the RDS freeable-memory audit (#3556)
  • types: reconcile the GallerySelectItem union with the gallery modal contract (#3557)
  • ci: restore reusable workflow permission ceilings (#3562)
  • constants: declare the free chat row instead of inferring it from a zero price (#3568)
  • api: stop killing the API when a peer microservice is cold (#3569)
  • apify: stop hammering Apify after an account usage-limit refusal (#3571)
  • infra: declare the Redis noeviction parameter group in tofu (#3564)
  • ci: repair consolidated master regressions (#3580)
  • auth: pin hosted app origin (#3567)
  • app: wait for auth before OAuth verify (#3572)
  • ui: repair and categorize model picker (#3573)
  • oauth: hide unapproved Reddit connection (#3577)
  • fanvue: request post publishing scope (#3578)
  • infra: import the existing Redis parameter group into state (#3579)
  • e2e: block service workers in mocked app suite (#3581)
  • ui: restore model selector type safety (#3582)

Performance

  • apify: cap actor runs and stop the trend layer re-scraping (#3575)

Refactoring

  • collapse the last dual singular/plural mutation APIs (#3550)

Tests

  • e2e: fix Playwright full-tier locators and mock brand scope (#3528)
  • api: align credential account mocks (#3583)
  • api: finish multi-account spec migration (#3585)
  • api: complete credential argument migration (#3586)
  • agent: align setup platforms with OAuth catalog (#3588)

Build and CI

  • close the release-tier validation gap (continuous master Full Suite, parallel E2E, refactor-proof contracts) (#3524)

Maintenance

  • bump repo version to 0.1.68 (#3584)

v0.1.67

0.1.67 - 2026-08-25

Features

  • ads: add X Ads connected distribution channel (#3399)
  • settings: add Cmd+K search and unclip the chat model picker (#3426)
  • onboarding: share brand setup across Cloud and Desktop (#3429)
  • workflows: add clip-chain system template and video stitch executor (#3448)
  • workflows: add JSON prompt authoring and structured output (#3451)
  • workflows: add video pilot-run gate and retry ceiling (#3454)
  • load first-party skills into the in-app agent (#3452)
  • discover: add X trends and public competitor ads inspiration (#3400)
  • workflows: add UGC amateur-realism video prompt presets (#3447)
  • workflows: add deterministic video-QA node (#3450)
  • cinematic prompting and named characters (#3453)
  • discover: add DSA transparency notice on X ads (#3473)
  • generation: compile image briefs for every selectable model family (#3513)
  • add YouTube guided channel warm-up (#3511)
  • harden calendar slot density (#3499)
  • studio: runs, recipe rail, and Vary on /studio/generate (#3491)
  • generation: extend model-aware briefs to the video path (#3500)
  • execute scheduled outreach blasts at their due time (#3498)
  • add channel posting time slots (#3497)
  • color publish calendar cards from the first tag (#3489)
  • confirm republish on calendar drag (#3494)

Fixes

  • api: create missing org settings so model toggles can persist (#3398)
  • api: preserve brand-kit tenant scope and agent-config CAS (#3411)
  • api: restore tenant-scoped outreach execution (#3412)
  • env: document X Ads OAuth client variables (#3415)
  • api: video Quality Run and Generate Caption were failing on playable files (#3421)
  • api: send Quality/Caption fetches to the public CDN, never the files host (#3424)
  • api: bind tenant list filters to the session organization (#3414)
  • api: refuse Twitter OAuth when secrets are placeholders (#3418)
  • library: video posters, muted type pills, multi-select Type filter (#3420)
  • desktop: restore local workspace behind a PostHog flag (#3425)
  • realtime: stop production sockets from disconnect-looping (#3419)
  • workflows: let operators pause schedules and name runs (#3422)
  • seo: correct docs and auth metadata (#3449)
  • discover: stop pinning public ads to the session org (#3455)
  • ci: unblock master typecheck and bump 0.1.67 (#3471)
  • api: enforce paused-only ads writes and lock down paid-media routes (#3472)
  • release: harden recovery digest and output identity checks (#3474)
  • workflows: scope execution tenants and reset library bulk state (#3475)
  • api: reject unusable saved remix voices before generation (#3476)
  • validate Hailuo first-frame input before Replicate (#3477)
  • settings: align notification contracts, translations, and anchors (#3478)
  • reserve outreach reply slots atomically across windows (#3479)
  • preserve Library operation errors without duplicate Sentry groups (#3480)
  • api: restore workflow-backed outreach campaign dispatch (#3481)
  • server: place tenant-scope suppressions on the line the guard reads (#3484)
  • wire Meta ad-set and ad listing through the ads gateway (#3487)
  • ci: restore spec typecheck ratchet for api and workers (#3503)
  • ci: restore remaining Full Suite jobs blocking v0.1.67 (#3509)
  • api: scope reference image lookups to the caller organization (#3504)
  • stop stale-organization onboarding 403 cascades (#3505)
  • harden brand-remix UI fallbacks and regression coverage (#3495)
  • validate ads insight date ranges before platform fan-out (#3488)
  • enforce tenant-owned outreach campaign and target persistence (#3493)
  • ci: restore master typecheck and executable contracts after merge burst (#3516)
  • api: prefer missing_scope over LinkedIn org-page selection (#3519)
  • remaining Full Suite reds blocking v0.1.67 (#3520)
  • prisma: provision cinematic-prompting skill catalog stub (#3521)
  • e2e: API E2E encryption key and post-watch contract (#3522)

Refactoring

  • extract article generation orchestration (#3510)
  • extract scheduled-post delivery from CronPostsService (#3508)
  • extract X authorized-signal refresh pipeline (#3507)
  • decompose brand-remix run orchestration (#3492)
  • drop @shipshitdev/ui and the .ship-ui class scope (#3490)

Documentation

  • add coding-agent install prompt and fix contributor dev path glossary (#3482)

Tests

  • onboarding: use shared Button for step-completion control (#3486)
  • api: member-only LinkedIn org-page evidence stays missing_scope (#3517)
  • api: member LinkedIn org snapshots require page selection (#3518)

v0.1.66

0.1.66 - 2026-08-22

Features

  • auth: enable user activity tracking (#3206)
  • agent: show last generated assets in the thread list (#3231)
  • analytics: sync PostHog identity across the auth lifecycle (#3221)
  • ui: add system, light, and dark appearance across apps (#3223)
  • context: retrieve brand knowledge by default on generation paths (#3246)
  • mcp: expose scheduler capability tools (#3253)
  • add warm-up invitation lifecycle actions (#3263)
  • review: assign queue items to team members (#3264)
  • agent: add per-channel release review card (#3265)
  • compile FLUX Schnell image generation briefs (#3267)
  • scheduler: persist posting sets and signatures (#3270)
  • optimization: execute A/B suggestions as attributed variation arms (#3245)
  • publish: project cadence slots and fill (#3271)
  • publish: skip, article slots, and cadence mutation (#3283)
  • website: headline-only article social card (#3288)
  • studio: consolidated /studio/generate playground for every asset type (#3298)
  • design: Geist-style readability pass and true-neutral light theme (#3293)
  • library: one asset browser on three axes — type, shelf, folder (#3309)
  • models: add Replicate Nano Banana 2 Lite and MiniMax H3 (#3322)
  • models: make Fal provider-aware (#3325)
  • content: add durable prefilled remix workflow (#3342)
  • raise public agent-readiness score (#3358)
  • notifications: add durable workflow status emails (#3360)
  • models: synchronize Fal schemas and pricing (#3361)
  • complete brand remix delivery (#3367)

Fixes

  • app: remove the sub-xl conversation/inspector sub navbar
  • app: keep Demo FUD News scope and Auto allowlist after #3083
  • workflows: persist prompts and confirm official install
  • app: translate voice catalog actions (#3201)
  • ci: resolve changed-coverage commit IDs (#3182)
  • close 24h retro holes in purge, shell, OpenRouter, and hosted SaaS (#3204)
  • files: drain Nest and BullMQ on SIGTERM (#3215)
  • stabilize master after 13-PR burst (#3220)
  • remaining 24h retro holes after Grok+Opus audit (#3224)
  • import ConfigService in model catalog seed spec (#3225)
  • scope PostAnalytics through post is-filter (#3232)
  • api: skip empty allowlist 403 on auto generate (#3233)
  • recover vendor-prefixed generate tools and empty-library voice cards (#3234)
  • align analytics toggle tests with themed token classes (#3235)
  • ci: restore Tests Gate after theming and thread-list fields (#3239)
  • oss: detect the Markdown issue template on Community Profile (#3238)
  • e2e: rebind bootstrap mocks after automation workflow routes (#3240)
  • ui: initialize EditableText draft state neutrally (#3242)
  • workflows: guard the full workflow API contract (#3243)
  • security: harden hosted SaaS deploy trust boundaries (#3249)
  • enums: replace production literals with existing members (#3266)
  • prisma: replace Json as-never with InputJsonValue helper (#3268)
  • queues: raise files lock duration and ECS stopTimeout (#3248)
  • credentials: map Prisma platform onto domain posts (#3269)
  • ci: grant contents write to the self-hosted publisher (#3281)
  • ci: repair combined master after PR dump (#3277)
  • seo: close the 2026-08-19 Ahrefs site-audit findings (#3284)
  • assets: point brand assets at the live CDN host (#3285)
  • app: restore leftover generate, run, and brand home (#3286)
  • publish: enforce API-key scopes on cadence fills (#3282)
  • prisma: lowercase posts.platform backfill (#3276)
  • types: replace remaining production as-never casts (#3279)
  • ci: restore cadence skip/article after dump-merge (#3291)
  • agent: hide disabled org models from generate picker (#3289)
  • studio: restore storyboard frames and opus-style clips list (#3296)
  • automate: nest agents under /automate/agents and make workflow pause visible (#3295)
  • llm: Grok 4.6 in the picker, stop silent Grok 4.5 defaults (#3299)
  • types: narrow clip project JSON:API attributes (#3306)
  • studio: correct avatar generation and guard the model race in /studio/generate (#3308)
  • persist sound auto-select and drop cadence spec null casts (#3313)
  • types: align suppression directive policy (#3314)
  • website: truncate OG headlines by Unicode code point (#3315)
  • agent: repair thread activity tooltip and asset ordering (#3316)
  • admin: isolate warm-up invitation request state (#3317)
  • api: harden posting cadence transitions (#3318)
  • ci: repair combined master contracts (#3321)
  • models: complete Fal provider identity contracts (#3326)
  • ci: align workflow specs with tenant scope (#3329)
  • qa: harden studio automation and tenant scope (#3343)
  • api: repair spec types flagged by the spec-typecheck ratchet (#3347)
  • api: unblock brand-kit apply and prune stale spec-typecheck baseline (#3348)
  • release: add fail-closed recovery mode for partially published releases (#3349)
  • ci: unblock Release Full Suite gates that adaptive PR CI skipped (#3351)
  • release: poll until draft CHANGELOG has a sha256 digest (#3352)
  • enums: bump MODEL_KEYS length ratchet to 115 (#3353)
  • ci: clear remaining Release Full Suite app and packages gates (#3355)
  • onboarding: prevent stale-org Sentry 403 cascade (#3357)
  • ui: align prompt chrome and test contracts (#3375)
  • api: enforce library brand authorization (#3374)
  • studio: repair Fastlane avatar generation (#3377)
  • release: recover incomplete published release (#3370)
  • credits: accept stored model providers (#3383)
  • tests: align merged service contracts (#3385)
  • app: refresh skill catalog on brand change and restore Full Suite contracts (#3390)
  • e2e: align Release Full Suite contracts after 66 recut (#3391)
  • e2e: keep clip review from hydrating as generating (#3392)
  • e2e: open studio surfaces on the branded storyboard path (#3393)
  • release: do not mix tofu -target and -exclude (#3396)
  • release: register hosted-SaaS task defs without mutating Redis AUTH (#3397)

Performance

  • web: close the Lighthouse mobile gaps on website, studio, and docs (#3287)

Refactoring

  • linkedin: extract trend derivation policy
  • workflows: remove unused list projection
  • workflows: remove superseded app hydration utilities
  • bots: extract livestream session data boundary
  • api: consolidate JSON record guards
  • ui: extract platform preview data boundary
  • workflows: split ComfyUI prompt builders
  • workflows: extract API contract types
  • workflows: split legacy node registry
  • seo: extract text analysis utilities
  • prompt-builder: extract Kling input mappings (#3177)
  • api: extract shared organization credits gates (#3205)
  • api: share provider catalog response envelope (#3210)
  • server: ratchet explicit-any to zero (#3212)
  • api: share ads insights date-range helpers (#3213)
  • serializers: move content-intelligence response mapping (#3214)
  • ui: flatten the model picker into a ranked command list (#3294)
  • app: remove orphaned frontend surfaces (#3331)
  • server: remove shadows and restore global trends (#3332)
  • api: decompose thread UI actions (#3336)
  • agent: decompose media generation handler (#3337)
  • api: extract base query normalization (#3335)

Documentation

  • oss: restore Community Profile coverage (#3211)
  • add mocked README product captures (#3262)

Tests

  • e2e: harden full-tier assertions (#3219)
  • articles: lock ownership-id error precedence (#3244)
  • remove explicit any from hot specs (#3278)
  • agent: open reference menu through pointer event (#3372)
  • hooks: restore copy prompt fixture (#3368)
  • e2e: mock aggregate elements payload (#3378)
  • app: reconcile shard 4 contracts (#3380)
  • api: align brand remix concurrency fixtures (#3387)
  • api: normalize persisted remix fixtures (#3389)

Build and CI

  • actions: enforce immutable action pins (#3381)

Maintenance

  • cla: record the agent-account allowlist in the CLA ADR (#3178)
  • extension: remove stale workspace dependencies (#3202)
  • bump repo version to 0.1.66 (#3254)
  • lint: ratchet videos collection explicit-any to zero (#3241)
  • types: ban production as any and ts-ignore (#3255)
  • ci: refresh Fal model spec baseline (#3327)
  • repo: remove superseded guidance and planning artifacts (#3330)

Other

  • Queue follow-up conversation prompts (#3272)

v0.1.65

0.1.65 - 2026-08-18

Features

  • pricing: dynamic-pricing audit follow-ups — margin audit trail, cost passthrough, media vendor-cost ledger (#3041)
  • close the content feedback loop end-to-end (#3045)
  • content: prepare scheduled SEO article rollout (#3053)
  • release: add public monorepo hosted SaaS deploy lane (#3088)
  • release: parameterize hosted SaaS from GitHub environment vars (#3110)
  • workers: purge soft-deleted agent transcripts after 30 days (#3130)

Fixes

  • agent: agent surface audit — org context, duplicate response, reconnect churn, thread-switch remount, first-card blank (#2994)
  • messages: social-inbox sync partial failure, X cursor, LinkedIn timeout (#3049)
  • workflows: wire content-loop analytics hooks, avoids, and posting times (#3047)
  • optimization: query real worst performers and feed them as anti-patterns (#3037)
  • agent: do not restore a snapshot over a live local run on reconnect (#3055)
  • agent: invalidate the thread list from the store instead of window events (#3039)
  • e2e: unblock Playwright full-tier admin 404s and stale IA (#3048)
  • seo: preserve launch articles in sitemap (#3054)
  • optimization: apply suggestion payloads instead of only logging BrandMemory (#3043)
  • e2e: dedicated authenticated Playwright banner marker (#3044)
  • default local and e2e to cheapest image, video, and chat models (#2993)
  • telemetry: explicit Sentry replay mask and no default PII (#3028)
  • images: document trained-model safety-checker bypass (#3031)
  • agent: keep scope guardrail on every prompt path (#3033)
  • agent: rate-limit turns and bound prompt length (#3035)
  • agent: fence untrusted prompt input on the chat path (#3036)
  • release: pin marketplace deployment SHA (#3067)
  • agent: add jailbreak and prompt-extraction hardening (#3038)
  • content: serve article cards from CDN (#3069)
  • seo: close remaining crawl correctness gaps (#3073)
  • e2e: clean leftover Playwright full-tier failures (#3074)
  • e2e: close remaining full-tier leftover specs (#3077)
  • app: close Demo / FUD News QA blockers for sell-this-week (#3083)
  • auth: await email provider acceptance (#3084)
  • voices: surface catalog when org library is empty (#3089)
  • clear unresolved Sentry production errors (#3090)
  • release: run hosted SaaS deploy in the public repo (#3105)
  • release: accept provided marketplace SHA without private API (#3107)
  • release: run hosted SaaS deploy fully in the public repo (#3108)
  • api: assert StripeCoreModule import graph in spec (#3112)
  • ranking: exclude soft-deleted posts before LLM selection (#3114)
  • admin: require trusted env for Playwright admin bypass (#3115)
  • queues: identify and harden recurring BullMQ stalls (#3119)
  • models: restore cloud-production fallback defaults (#3120)
  • infra: unblock tofu init variable description (#3127)
  • realtime: isolate socket identity across token rotation (#3118)
  • e2e: align leftover full-tier locators with current IA (#3117)
  • release: validate marketplace SHA and stop secret inherit (#3131)
  • api: set OpenRouter zdr and deny data collection (#3129)
  • ci: use GITHUB_TOKEN only and allowlist transcript purge (#3139)
  • ci: preserve full-tier shard reports (#3147)
  • ci: scan merge-queue entries with the gitleaks CLI (#3152)
  • files: keep remotion pins, catalog, and patches on one version (#3157)
  • e2e: restore authed onboarding and execution history (#3160)

Refactoring

  • content-performance: delete unused generateNextBatchPrompts (#3042)
  • billing: open-source billing under AGPL and drop ee/ (#3093)
  • api: drop one-way Nest forwardRef wrappers (#3095)
  • api: split remaining Nest rings to zero forwardRef (#3102)
  • api: use ModuleRef in model controller specs (#3121)
  • brands: share controller access assertion (#3123)
  • articles: extract input boundary guards (#3135)
  • server: extract artifact material canonicalization (#3133)
  • workers: extract scheduled-post publish error policy (#3142)
  • agent: split cloud tool registry extensions (#3151)

Documentation

  • oss: Contributor-ready document set — glossary, ADRs, community files, README/CONTRIBUTING rewrite (#3003)
  • record agent prompt moderation stance (#3032)
  • oss: resolve review follow-ups on contributor docs and CI Node default (#3079)
  • oss: adopt FLA 2.1 CLA via CLA Assistant, retire DCO (#3092)
  • oss: version CLA acceptance once per account per CLA version (#3128)
  • oss: rewrite README hero, quick start, and agents section (#3137)

Tests

  • generate spec entity ids with testId() and guard high-entropy literals (#3015)
  • app: lock Agents settings href to /settings/policy (#3085)
  • app: lock /admin/organization redirect to live org analytics (#3086)
  • content: drop duplicate launch articles from artwork fixture (#3111)
  • content: assert both optimization-cycle findMany scopes (#3113)
  • restore client function and models branch coverage (#3116)

Build and CI

  • declare least-privilege token permissions in every workflow (#3075)
  • run required checks on merge_group for the master merge queue (#3145)

Dependencies

  • deps: bump the patch-and-minor group across 1 directory with 34 updates (#3124)
  • deps: replace Dependabot with deps:update Action bumps (#3136)
  • deps: bump workspaces to latest and move the PGlite pin to 0.5.5 (#3150)

Maintenance

  • media: discard orphan prod media dataset (#3046)
  • automation: ignore local SEO reports (#3051)
  • worktrees: pin agent worktrees to /.worktrees/ (#3004)
  • oss: exempt org members from the DCO check (#3068)
  • memory: one closing keyword per issue in PR bodies (#3076)
  • bypass Vercel image optimization (#3078)
  • de-slop the monorepo (unused imports, dead lint comments, commented-out code) (#3081)
  • bump repo version to 0.1.65 (#3104)
  • oss: unify issue-form EARS wording and intake labels (#3138)

v0.1.64

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.63...v0.1.64

v0.1.63

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.62...v0.1.63

v0.1.62

What's Changed

New Contributors

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.61...v0.1.62

v0.1.61

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.6...v0.1.61

v0.1.6

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.5...v0.1.6

v0.1.4

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.3...v0.1.4

v0.1.3

Highlights

  • Ships the complete post-v0.1.2 master state, including the July live-QA route, shell, navigation, inspector, composer, settings, library, workspace, and design-system corrections.
  • Adds evergreen scheduling controls, scheduler release analytics, canonical generation briefs, social-inbox lifecycle contracts, and hardened agent publishing behavior.
  • Strengthens tenant scoping, authentication boundaries, filesystem and outbound-request security, webhook validation, and API contracts.
  • Stabilizes the release path with adaptive PR validation, exact-head E2E coverage, self-hosted build verification, OpenAPI drift checks, and deterministic route coverage.
  • Includes backend, worker, desktop, media, billing, workflow, and performance consolidation accumulated since v0.1.2.

Full changelog: https://github.com/genfeedai/genfeed.ai/compare/v0.1.2...v0.1.3

v0.1.2

v0.1.2

Promotes staging → master (#568). Production release.

Highlights

  • ee/billing decoupled from the AGPL self-hosted image; hardened self-hosted Docker (#563).
  • Self-hosted release E2E against the shipped image (#558).
  • Link-check CI: website link/orphan gate + docs dead-link check; repaired stale internal links and archived-repo references across docs and website (#566, #559).
  • Core-loop docs: repointed source permalinks from the deleted develop ref to master (#569).

Notes

  • No breaking API changes — patch bump over v0.1.1.
  • Branch hygiene: repo auto-delete-head-branch disabled; develop/staging/master now protected from deletion and force-push.

v0.1.1

v0.1.1

Patch release promoting accumulated develop fixes through staging to master.

Fixes

  • fix(api): normalize app enums for prisma filters
  • fix(api): normalize RDS filters for library queries
  • fix(app): serve pwa icons locally
  • fix(ci): restore organization typecheck
  • fix(ci): ignore ui-only package changes for backend deploys
  • fix(ci): use ui-excluding package glob for backend deploys
  • fix(ci): diff manual deploys against selected branch
  • fix(deploy): require master for production deploys

Chore

  • chore(ci): add Dependabot config targeting develop (npm/bun, github-actions, docker)

Verification

  • Full CI green on develop and staging→master PRs (Format, Typecheck, Lint, Gitleaks, Secretlint, all Test API/App shards, Build & Boot)
  • Mac Studio: typecheck + 59/59 test tasks green

v0.1.0

First tagged release of the genfeed.ai monorepo. Publishing this release triggers the production deploy.

Highlights

  • All 13 production Sentry issues root-caused and fixed — newsletters Prisma reconciliation (schema + data-preserving migration, applied to prod), exception-filter chain repair (4xx noise no longer pages Sentry), Clerk webhook 400s, Google Ads config optional, files-service EACCES, website RSC fn-prop serialization / hydration / extension noise / interceptor error shape.
  • Deploy pipeline restored after the cloud→genfeed.ai migration broke it: recovered build-unified-image action, SSH/SSM config fixes, SSM multiline-check bug, bun x migrate runner, hoisted bun install so runtime requires resolve in the production image.
  • Production-readiness remediation: dead package deletion, S3/Job dedup into shared libs, Mongo residue removal, workflow boundary cleanup, bot-manager dedup, CI dedup.
  • Pipeline features: ReDoS-proof regex evaluation (#475), bot engagement/monitoring/publishing sub-schemas (#483), workflow abortSignal + bounded maxConcurrency (#479).
  • 12 test files repaired after the org-scoped URL refactor; full app suite 1630/1630 green.

What's Changed

Full Changelog: https://github.com/genfeedai/genfeed.ai/commits/v0.1.0