Skip to content

v2.1.15

Choose a tag to compare

@mikekhristo mikekhristo released this 04 Sep 06:09
· 2 commits to main since this release

Changelog

  • 828a417ac6a5c2b379d358b587fb0c5f04209e36 chore(cli): 2.1.15, the setup summary ends with the served next step (#5798)
  • df5bf9e615aaf73537172a631d423d7a123dd925 docs(ads): Elle prompt copy leaves the PG-100 scope (founder ruling 2026-09-03) (#5756)
  • a8da6c38ec71897f36ae8fb54f954e5a620e96c9 docs(ads): Paid Growth M0 close packet (PG-011) (#5755)
  • fcb6be6a10761086f57ea85acfe4b6f1b007f631 docs(ads): V0 founder fixtures over real stored evidence (PG-020) (#5758)
  • fb59f176051d671079c54064a414e101ce468348 docs(ads): decision record v6 — evidence floor, overdelivery tolerance and safety buffer per lane (founder draft) (#5775)
  • 970060041b9161f77b694ecbc7e5cd164353e035 docs(ads): roma's TikTok Events Manager sources recorded (PG-006) (#5749)
  • 9c807810a3375a29ac380d1cd4cfe2cf5ab41f60 docs(ads): the Apple canary is DreamOwl (PG-006) (#5745)
  • 3b6017670be29698db9c8f59344165ff3615aecc docs(specs): next-step engine v3, a decision table by presence tier, rules only, computed on read (#5783)
  • 2ff938e66f22db41e43b92826ebf88b8451faa7c docs(specs): next-step engine v5, wait sorts last across the whole walk (#5786)
  • 7125894210542743d2792d192d8a663fcafa394c docs(specs): the next-step engine and growth links with the bio page (#5766)
  • 4044463cd1d131fd6706c0adde0192db22aadf2d feat(ads): Paid Growth lane ledger schema and canonical scenario manifests (PG-010) (#5753)
  • 98ba52c414e695f86829e38cf0fb4455ebf7252b feat(ads): adapter readiness composes the per-app resolver (PG-203 follow-up) (#5771)
  • 504d5ea87323c9b39d236a36513fc9f01a934157 feat(ads): add canonical paid growth fixtures (#5796)
  • 1160695110e379d267077c37706e789d96a1b2c2 feat(ads): add scripted paid growth demo state (#5797)
  • fecaa07124f8414b375a573a7f97224f363e75bf feat(ads): deterministic MCP certification driver, mock target and CI job (PG-207, live target follows) (#5774)
  • 1f8ea2cf9246e54ec0a03ce1765bd459599f8f4e feat(ads): encode signed paid growth envelope policy (#5792)
  • 5f13c464d79bfcd307c9455c3ba1adf9a62e8d3e feat(ads): provider adapter interface, TikTok adoption (PG-203) (#5769)
  • b46f2302807f359c7fa6e4847bcfac075b9d2cfd feat(ads): the creative score decides nothing (M1 S1, PG-100) (#5760)
  • ea355ae54a986b94079f69e9dbfde14e5d7a6750 feat(api): PaidResultEvidence and the campaign result owner (M2, PG-200) (#5762)
  • a5f1fa1eaea5fcb849e505dd0ea2ac313f741aad feat(api): the promoted paid plan starts from a public opportunity and the winner rule (M2, PG-201) (#5761)
  • 13f88ddc8b3012ade7be2c60a597da44ad40c485 feat(content): cast the reaction demo tail for the hook when no door states one (#5764)
  • aed98a5d3c383f819e291426d8e11463e119e474 feat(content): the remix brain casts the app icon and a walked screenshot (#5778)
  • e0a2bf11af18354e536fef3d7ae8290028fd513a feat(growth): growth.layers.com carries the same analytics as layers.com (#5751)
  • 6723e6bff23290a70291e5893b5829df24b13d0e feat(hooks): the hook pool, phase 1 — the picked hook's id travels to the container (#5791)
  • d989445df82380a9d633490e47b05d3337d103ae feat(ingest): the /l/ tracking-link route with a store arm and a redirect arm, the payload on both platforms, and the click id into Stripe (#5780)
  • 02ba2942df892a4e897a23225c19f092c86626ed feat(ladmin): a Cancellations page under Customers lists recent cancellations (#5741)
  • b59d642403b85e272a230a5ba0a0a9fba5a5535a feat(links): tracking links become rows, with tags, a payload and the reads (#5782)
  • 97d2eafa292811260e8858597ef5932aa0f9dfbf feat(mcp): exact setup handoffs with observed completion and MCP resume (PG-205) (#5773)
  • 0635eccbcb54c3596e89377f528d3e48790ccbb6 feat(mcp): provider-by-app readiness shared by plan and draft (PG-202) (#5768)
  • ef131e3e8cbc9a7f8df2d9374f37104a2b51f3d2 feat(next-step): next on every envelope, layers://next, and decline_next_step (#5790)
  • c75835c71d9a31aecfd91fdca6f0587979701a50 feat(next-step): the contract, the decision table and the owner (#5781)
  • c921185fbe8a1b302a7f1d701871476af5bc2cdd feat(next-step): the project home lead row, the answers route and the CLI closing block (#5788)
  • 5e2d05accc4d9c2a228caa115532b7e1f1b2ea9b feat(partner): score fields deprecated in place, eligibility explicit or evidence-based (M1 S2, PG-101) (#5759)
  • f6b30036ef9e4498d68ad6f6938716eb647443a8 feat(social): TikTok rejections skip the post, two in a row hold live posting (#5765)
  • 11958d20e39090759562ffd72349bc3fa8b5abe4 feat(temporal): spend-envelope watchdog halts on plan-bound tolerance (PG-206) (#5772)
  • b2a26f339ed6fd75be3285b4bdb05b454468a0ed feat(web): safe paid-growth projections behind the surfaces flag (PG-204) (#5770)
  • 2367f6dc196ae352fb80b269c8a9478bd7ef72ab fix(ads): clarify Apple keyword imports (#5777)
  • 1c4bedfa143542a477d85cc02bf67c63d47dfa33 fix(ads): surface actionable campaign build failures (#5789)
  • 010ce53be59998987c6db560727ddc1ce5b8bcf6 fix(api): the SDK app settings write lands the row (#5785)
  • 98224ff2c1a465055807270f3860c81ebe0dc6ae fix(billing): activate the plan on promo redemption, and let a trialing subscription be un-cancelled (#5795)
  • 4fcdd008d6a4969a8e00b9fadcb379f32e69fe4e fix(growth): SUPERPOWERS fits one line on phones instead of breaking mid-word (#5757)
  • a01dfdab0055ed838af651fe3cebe769de8f04bb fix(growth): the front door renders in the Layers faces (#5743)
  • 5977f4dd52b8778effd3bf69fbc7201ab02b47b1 fix(growth-proxy): the front door test stops timing a 432-second download as startup (#5793)
  • a0b6e753e888b8d97da5c473664fd108a7c27b1f fix(mcp): a connected account resumes a waiting onboarding on its own (#5784)
  • 99fba156f33ec9853beb55c7e51bc1952b7a81da fix(mcp): the TikTok paid key leaves the catalog until a lane is live-certified (#5754)
  • 9cdb98657734baabd9b57c0496cc199982594283 fix(mcp): the five API defects the stranger walk found on 2.1.13 (#5752)
  • 70a1fe81e3ae82586e6508b9a12398f499d9439f fix(partner): one eligibility predicate for partner and internal surfaces (PG-101 swap) (#5767)
  • 57f50ed373c2e5a342e24ac5b58d16fda463d5e1 fix(partner): opaque post ids and no provider ids in top-performer copy (#5763)
  • c00102670fff0306cd3dd91bd576286d410a1055 fix(temporal): influencer portrait is an ICP reference, never an ad (#5779)
  • 1590a8b5e6561ffb190a2caedac0e3bd9c77f460 fix(web): remix builder offers app screens on a slideshow source only (#5776)
  • 96c5fb93a2bb1668c050c7cb4e598d77886661ff hero: the swarm carries both overlays the marketing hero draws (#5748)
  • d0e9f37642a69a76f05e8e2c0a8ec2b26ff56b74 perf(ci): merge groups stop running the suites they do not touch (#5744)