Issue 7Week of 19 October 2026Published weekly

OpenAI turns off o3-mini, o4-mini, o1 and GPT-4 Turbo on Friday, the OpenCode breach puts coding agent keys in play, and GitHub now locks Actions dependencies.

On Friday 23 October OpenAI removes o1, o1 pro, o3-mini, o4-mini, GPT-4, GPT-4 Turbo, GPT-3.5 Turbo 0125, GPT-4.1 nano and gpt-image-1 from its API, along with six fine tuned models. The replacements it names are priced very differently: on a typical month the o3-mini landing costs four times as much and the gpt-3.5-turbo landing 5.5 times as much, and the fine tuned models have nowhere to go, because none of the named replacements supports fine tuning. OpenCode disclosed on 18 October a breach that it says hit 1.4 percent of its Console users who had linked an Anthropic, OpenAI or Google account, so the keys in a coding agent's login file need rotating. On the defence side, GitHub now blocks Anthropic API keys at push by default and has put Actions workflow lockfiles into public preview, including on Free plans. This issue covers 15 to 19 October, plus two items from 13 October that last week's issue missed.

ByKarthik KumarCafiyn Innovations
Get it weekly, no account:RSSJSON Feed

This week, in depth

Tracked continuously

Every item we have published on a theme, in one place, growing weekly.

Deadline board

8

Dated, sourced, and with the first thing to do. Soonest first.

  1. ShutdownOpenAI

    o1, o1 pro, o3-mini, o4-mini, GPT-4, GPT-4 Turbo, GPT-3.5 Turbo 0125, GPT-4.1 nano and gpt-image-1 are removed, with their fine tuned versions

    Do this: Search your code and config for these model IDs today, switch each to a tested replacement, and rerun your evals before the date.

  2. ShutdownGoogle

    The Gemini Deep Research agent deep-research-pro-preview-12-2025 shuts down

    Do this: Change the agent parameter in your interactions.create calls to deep-research-preview-04-2026 or deep-research-max-preview-04-2026.

  3. Read onlyOpenAI

    Existing evals in the OpenAI Evals platform become read only

    Do this: Export your eval definitions and results now, because the dashboard and API shut down on 30 November.

  4. ShutdownGitHub

    GitHub Copilot removes Claude Opus 4.8, Claude Opus 5 and GPT-5.6 Terra from every Copilot experience

    Do this: Move saved workflows and agent configs to Claude Opus 5.5, GPT-6.1 Sol or GPT-6 Luna. Annual individual plans keep Opus 4.8.

  5. PriceOpenAIAt least through

    GPT-5.6 Sol promotional pricing of $4 input and $20 output per million tokens is guaranteed only through this date

    Do this: Model your bill at the earlier price the page implies, $5 and $30, until OpenAI says the promotion is permanent.

  6. ShutdownOpenAI

    Agent Builder, the Evals dashboard and API, and the v1/prompts reusable prompts API shut down

    Do this: Move prompt text into your own code and replace Agent Builder flows with the Agents SDK before the date.

  7. ShutdownAnthropic

    Claude Sonnet 4.5 (claude-sonnet-4-5-20250929) is retired on the Claude API

    Do this: Switch to claude-sonnet-5-5, which Anthropic names as the replacement, and check your token counts again because the tokenizer changed.

  8. PriceGoogle

    Gemini 4 Argon moves from $2 input and $10 output to $4 and $20 per million tokens

    Do this: Cost your product at the December price, not the launch price.

Hot takes

3

Our read on the week. Opinion, and labelled as such.

OpenAI's named replacement for gpt-3.5-turbo costs 5.5 times as much on a typical mix, and a cheaper tier costs about half

Opinion
19 Oct

OpenAI's deprecations page maps gpt-3.5-turbo-0125 and ft-gpt-3.5-turbo to gpt-5.6-terra, and gpt-4.1-nano to gpt-5.6-luna, for removal on 23 October. The model pages list gpt-3.5-turbo at $0.50 input and $1.50 output per million tokens, Terra at $2 and $12, GPT-5.6 Luna at $0.20 and $1.20, and gpt-4.1-nano at $0.10 and $0.40. A separate 14 October notice names gpt-6-luna, at $0.10 and $0.50, as the replacement for GPT-4o, GPT-4o mini, GPT-4.1 and GPT-4.1 mini. On a month of 10 million input tokens and 2 million output tokens, gpt-3.5-turbo costs $8.00, Terra costs $44.00 (5.5 times as much), GPT-5.6 Luna costs $4.40 (0.55 times) and gpt-6-luna costs $2.00 (0.25 times).

So what

Treat the named replacement as the default to test, not an instruction. For a high volume, low cost workload the price is most of the reason you chose the old model, so run your evals on Luna and on gpt-6-luna before you accept Terra, and decide on measured quality rather than on the mapping table. The same applies to gpt-4.1-nano: the named landing, GPT-5.6 Luna, is 2.4 times the price on that mix ($1.80 to $4.40), where gpt-6-luna is 1.1 times ($2.00). Two caveats keep the arithmetic honest. These are reasoning models, and OpenAI's reasoning guide says reasoning tokens are billed as output tokens, so measure output tokens per request on real traffic. And set reasoning.effort deliberately: the Terra and Luna pages list none, low, medium (the default), high, xhigh and max.

Every o1 and GPT-4 Turbo migration lands on GPT-5.6 Sol, and its $4 and $20 price is promotional through at least 21 November

Opinion
19 Oct

OpenAI's deprecations page names gpt-5.6-sol as the replacement for o1, o1 pro, o3-mini, GPT-4, GPT-4 Turbo, gpt-4-1106-preview and gpt-4o-2024-05-13, all removed on 23 October. The Sol model page lists $4 input, $0.40 cached input and $20 output per million tokens and says "GPT-5.6 Sol's promotional pricing is available at least through November 21, 2026", describing it as a 20% reduction in input pricing and a 33% reduction in output pricing. That implies earlier prices of about $5 and $30. Prompts over 272K input tokens are priced at 2x input and 1.5x output for the whole request. On a month of 10 million input and 2 million output tokens, Sol costs $80.00, against $270.00 for o1, $2,700.00 for o1 pro, $160.00 for GPT-4 Turbo, $420.00 for GPT-4 and $19.80 for o3-mini.

So what

The saving is real for o1, o1 pro, GPT-4 and GPT-4 Turbo, and it survives the old price: at $5 and $30 the same month costs $110.00, still 59 percent less than o1, 96 percent less than o1 pro, 74 percent less than GPT-4 and 31 percent less than GPT-4 Turbo. The loss is on o3-mini, where Sol is 4.0 times the cost today and 5.6 times at the earlier price. So do not book the savings until OpenAI says the promotion is permanent, and route o3-mini traffic to Terra first, which is the model OpenAI names for o4-mini and costs 2.2 times o3-mini on this mix. Put 21 November in your calendar either way.

Your coding agent's login file is a production secret, and GitHub now treats Anthropic keys that way by default

Opinion
18 Oct

StepSecurity reports that OpenCode stores the provider credentials a developer links at ~/.local/share/opencode/auth.json on macOS and Linux. On 18 October OpenCode said a breach it ties to a large scale distillation attack affected 1.4% of its Console users, those with external providers linked. On 13 October GitHub added Anthropic's two API key types to secret scanning and made push protection block them by default: "Repositories with secret scanning enabled, including free public repositories, will have commits containing these secrets automatically blocked."

So what

A coding agent's login file belongs in the same inventory as your production keys, because it holds the same power. List the agents your team runs and the provider keys each one can reach, give each developer their own key per provider rather than a shared team key, and set a spend limit where the provider offers one, so a stolen key shows up as a capped bill instead of an open one. GitHub's block is a good default and it only covers pushes: a key already in your history, in a log or in a chat paste is not caught by it, so scan your history once and rotate anything that was ever committed.

Post-mortems

2

What broke, and the specific thing to check in your own stack.

OpenCode says a breach hit 1.4 percent of Console users who had linked an Anthropic, OpenAI or Google account

Security
18 Oct

On 18 October OpenCode, the open source AI coding agent, posted on X: "We had a security breach last night related to a large scale distillation attack that impacted 1.4% of OpenCode Console users. We have notified them all this morning via email. The incident is ongoing so we cannot share more details at this point but we are working with Anthropic, OpenAI, and Google to remediate." StepSecurity, which reproduced the statement, says the affected users are those with external AI providers linked, that OpenCode has not published a root cause, the data accessed or the affected versions, and that, according to the vendor, anyone who did not get an email was not affected.

So what

If anyone on your team uses OpenCode with a linked provider, rotate those keys today, not after the root cause is published. Check for the OpenCode email first, including spam, then list what each machine has linked: StepSecurity gives ~/.local/share/opencode/auth.json on macOS and Linux and %USERPROFILE%\.local\share\opencode\auth.json on Windows, and every provider in that file is a credential worth rotating. Then open each provider's usage dashboard and look for requests nobody on the team made, because unexpected spend is how misuse of a stolen key shows up. The installed version does not tell you whether you were affected, since the scope is Console accounts with linked providers.

An npm Trusted Publishing flaw let anyone who claimed a freed GitHub repository name publish as the owner, across more than 1,500 packages

Security
13 Oct

Help Net Security reports research from Bloom Security showing that npm Trusted Publishing recorded the repository allowed to publish a package by its name, owner and repo, and did not check the permanent numeric IDs GitHub puts in the identity token. When a maintainer renamed, transferred or deleted the repository, or renamed or deleted the owner account, the name became free: anyone could create a repository at that name with a workflow file of the matching filename and receive a publish credential for a package they did not own. Bloom counted more than 1,500 packages exposed, with more than 10 million downloads in total, is not publishing their names, and says it is unknown whether anyone exploited the flaw. GitHub announced on 2 October that unvalidated Trusted Publishing configurations now expire 48 hours after creation and cannot authorise publishing, and that a configuration is validated by its first successful publish. GitHub's statement does not say whether configurations that had already published were bound retroactively. Bloom says the GitLab integration has the same weakness.

So what

Maintainers: open the trusted publisher settings of every package you publish this way and look for a repository you have since renamed, transferred or deleted. Remove that binding and recreate it from the current repository so the first publish validates it, and in future remove the binding before you rename, transfer or delete a repository. Consumers: Help Net Security notes that a release published through the flaw carries a valid provenance attestation naming the attacker's repository, so the check that works is that the attestation names the repository the project is supposed to come from. GitHub also now rejects trusted publishing tokens from issue_comment events, so move any publish job that runs on a comment to push, release or workflow_dispatch.

Wins

2

Rounds, launches, and benchmarks worth measuring yourself against.

GitHub Actions workflow lockfiles reach public preview, and they work on Free plans

Launch
14 Oct

GitHub put Actions workflow dependency lockfiles into public preview on 14 October, for GitHub Enterprise Cloud, Enterprise Cloud with data residency, Team and Free plans. The changelog's reason is that tags and branches can move after you review a workflow, so a later run might execute different code. A lockfile keeps the references in your workflow and runs the exact commits you locked. The gh actions-lock extension generates .github/workflows/actions.lock, workflows are onboarded one at a time, a Require lockfile policy is also in preview, and Dependabot regenerates the matching lockfile entry in the same pull request when it updates an action. GitHub warns that locking does not decide whether a dependency is safe, and the extension's README calls it pre 1.0, with formats and flags that may change and no support on GitHub Enterprise Server.

So what

Start with the workflows that hold deploy keys, cloud credentials or package publish rights, since a moved tag in one of those is the expensive case. Install the extension, run it once, review the generated pins before you commit them, because a lockfile locks whatever you point it at, and add gh actions-lock --verify to CI so a stale or tampered lockfile fails the build. Expect rough edges in a pre 1.0 tool and keep your own pinned SHAs for anything critical until it settles.

GitHub secret scanning now blocks Anthropic API keys by default, including on free public repositories

Security
13 Oct

On 13 October GitHub added secret scanning detectors for two Anthropic key types, anthropic_service_api_key and anthropic_user_api_key, plus a Cloudsmith key, and made push protection block both Anthropic types by default. The changelog says repositories with secret scanning enabled, including free public repositories, will have commits containing them automatically blocked. User secrets raise alerts in public or private repositories, while partner secrets such as the new Salesforce Marketing Cloud OAuth2 token are reported to the issuer when found in public repositories so it can revoke or rotate them.

So what

Check that secret scanning and push protection are switched on for your private repositories too, because the default only applies where secret scanning is enabled. Then treat the block as a seatbelt and not a scan: it stops a key at push, and it does not touch a key already in your history, a build log or a pasted ticket. Run a history scan once, and rotate any Anthropic key that has ever been committed, whether or not GitHub alerted you.

On the radar

6

Shifts that have not hit you yet but will.

OpenAI removes o1, o3-mini, o4-mini, GPT-4 Turbo and gpt-image-1 on Friday 23 October, with the replacements priced very differently

Deadline
23 Oct

OpenAI's deprecations page lists a 23 October shutdown, announced on 22 April, for o1, o1 pro, o3-mini, o4-mini, GPT-4 (gpt-4-0613), gpt-4-1106-preview, GPT-4 Turbo, GPT-3.5 Turbo 0125, GPT-4.1 nano, gpt-4o-2024-05-13 and gpt-image-1, plus six fine tuned models. It names GPT-5.6 Sol for o1, o1 pro, o3-mini, the GPT-4 models and gpt-4o-2024-05-13, GPT-5.6 Terra for o4-mini and GPT-3.5 Turbo, GPT-5.6 Luna for GPT-4.1 nano, and gpt-image-2.5-sunburst or gpt-image-2.5-flare for gpt-image-1. At the shutdown date the page says a model "will no longer be accessible".

So what

Find your calls today, because the failure mode is a forgotten job rather than the main request path. OpenAI documents an optional shutdown_date field on the List models endpoint, so one request lists what your key can still see with a date on it, and a search of your repository and config for the model IDs catches the rest, including per customer settings stored in a database. Then check fine tuning before anything else: the model pages list fine tuning as not supported on Sol, Terra and Luna, so a fine tuned model cannot simply be recreated on the base OpenAI names. The full model by model table, with what each landing costs, is in the analysis.

Google shuts down the Gemini Deep Research agent deep-research-pro-preview-12-2025 on 23 October

Deadline
8 Oct

On 8 October Google's Gemini API release notes deprecated the Deep Research agent deep-research-pro-preview-12-2025 and set its shutdown for 23 October 2026, 15 days later. They name two newer agents: deep-research-preview-04-2026, described as designed for speed and efficiency and suited to streaming back to a client UI, and deep-research-max-preview-04-2026, described as maximum comprehensiveness for automated context gathering and synthesis. The migration step is to change the agent parameter in your interactions.create requests.

So what

Swap the agent string this week, and read it as a reminder of what a preview is: OpenAI's own policy says preview models can be retired with notice as short as two weeks, and this one got about that. Decide which of the two replacements fits, since they trade speed for depth, and rerun a sample of your research tasks, because an agent change can alter what comes back and not only the name. Keep preview agents out of any path you cannot change in a day.

GitHub Copilot removes Claude Opus 4.8, Claude Opus 5 and GPT-5.6 Terra on 16 November

Deadline
15 Oct

On 15 October GitHub said it will remove Claude Opus 4.8, Claude Opus 5 and GPT-5.6 Terra from every Copilot experience on 16 November, including Copilot Chat, inline edits, ask and agent modes, and code completions. The suggested alternatives are Claude Opus 5.5 for both Claude models and GPT-6.1 Sol or GPT-6 Luna for Terra. Opus 4.8 stays for individual subscribers on annual plans. For Copilot Business and Enterprise the alternatives are enabled automatically unless an administrator has turned off the global default or explicitly disabled the model.

So what

Check what you have pinned: saved agent configurations, scripts that select a model by name, and organisation model policies. If an admin turned off the global default, the alternatives will not appear on their own, so enable Claude Opus 5.5 and GPT-6.1 Sol in the model policies before 16 November. No action is needed to remove the old models, and the alternatives carry different list prices from the models they replace, so check what your usage costs afterwards.

Claude Opus 5.5 fast mode is out of research preview at $8 and $40, double the standard price

Pricing
15 Oct

Anthropic's 15 October release notes say fast mode is out of research preview for Claude Opus 5.5: you no longer need to request access, requests no longer need the fast-mode-2026-02-01 beta header (those that still send it keep working), and there is now a default fast mode rate limit in the Start, Build and Scale tiers. Fast mode for Claude Opus 5 and Claude Opus 4.8 stays in research preview. The pricing page lists Opus 5.5 fast mode at $8 input and $40 output per million tokens, against $4 and $20 standard, and says fast mode pricing applies across the full context window, stacks with prompt caching and data residency multipliers, and is not available with the Batch API.

So what

Fast mode doubles the price, so spend it where waiting costs you, on interactive paths a person is watching, and not on background work. It cannot be combined with Batch, which is the cheap end of the same dial, so a job that is not latency sensitive should go the other way. Add the model and mode to your cost dashboard as a separate line, because a switch left on in a shared config doubles a bill without changing a single prompt.

Vercel Token Pass gives a Pro team $80 of monthly open weight model credit for $30, and stops when the credit runs out

Pricing
15 Oct

Vercel Token Pass entered early access for Pro teams on 15 October. For $30 a month a team gets $80 in monthly credit for GLM 5.3 and Kimi K3, with more models to come, through AI Gateway, for use with coding agents or an agent built with the AI SDK. Zero Data Retention is on by default, with inference in the US and EU. The subscription renews monthly, unused credit does not roll over, and when the credit runs out requests stop until the next billing period, with no automatic overage charges.

So what

A hard stop is a feature if your fear is a runaway agent bill: the worst month is $30. The trade is that a coding agent that hits the limit mid task simply stops, and only two models are included so far, so check that one of them passes your own evals before you route a team through it. Treat the $80 as a ceiling to try, not a budget, until you have seen a month of real usage.

Unauthenticated Git clones from GitHub can fail during traffic spikes, so give CI a token

Breaking change
19 Oct

On 19 October GitHub said that during periods of unusual traffic it may temporarily require authentication for some clones and fetches of public repositories over HTTPS, to protect the availability of github.com. An affected operation fails with a message that authentication is required. Authenticated operations, SSH operations and pushes are unaffected, and GitHub says this is not a general authentication requirement for public repositories. For automated clones it recommends the built in GITHUB_TOKEN in GitHub Actions and, in other CI systems, a GitHub App installation access token, with a personal access token also possible.

So what

Find the places your pipeline clones anonymously: dependencies installed from git URLs, submodules, Dockerfile steps and tool installers that fetch from GitHub. Those are the ones that fail in a spike, usually at a bad moment and with an unhelpful error in the middle of a build. Add a token where you can, prefer an app installation token over a personal one outside Actions, and make the failing step retry once after a delay, since GitHub says the protection is lifted again afterwards.

Past issues

About this briefing

What is Startup Signals?

A weekly briefing for founders and engineering teams shipping products, published by Cafiyn Pulse. Each issue has four sections: Hot takes (opinion on the week), Post-mortems (what broke, and the specific thing to check in your own stack), Wins (funding rounds and benchmarks), and On the radar (shifts that have not landed yet). Four to five items each issue also get a full analysis page.

How often is it updated?

Weekly. The current issue is at /signals and every past issue keeps a permanent URL at /signals/ plus its ISO week, so figures are never rewritten after publication.

Where do the facts come from?

Primary sources only: provider documentation and changelogs, official company announcements, and established trade press such as TechCrunch and Crunchbase News. Every item links to its source. We report on other reporting and do not break news ourselves.

Who writes it?

Karthik Kumar, founder of Cafiyn Innovations in Bangalore, India. Items in Hot takes are opinion and labelled as such; everything else is sourced reporting with the link attached.

What makes it different from a news aggregator?

Every item carries a "So what" line: one sentence on what a team shipping a product should do differently as a result. The deep analysis pages go further, written against the primary documentation to surface details the general coverage skipped, such as migration gotchas that fail silently or billing multipliers that are easy to miss.

Is it free?

Yes. No account, no newsletter signup required to read it.

How do I subscribe?

There is an RSS feed at https://pulse.cafiyn.com/signals/feed.xml and a JSON Feed at https://pulse.cafiyn.com/signals/feed.json. Both carry the full text of every weekly issue and every deep analysis page. There is no email list and no account, so subscribing costs you nothing and reveals nothing.

Open the tool.

Most of what shows up in Post-mortems maps to one of ten categories the Stack Grader already checks. Three minutes, and you will know which ones apply to you.

Check your stack against this week's failures