Metadata-Version: 2.4
Name: flake8-llm-sunset
Version: 0.0.2
Summary: A flake8 plugin that warns about expiring LLM model IDs
Author-email: nikkie <takuyafjp+develop@gmail.com>
License: MIT License
Project-URL: Repository, https://github.com/ftnext/llm-sunset-lint
Keywords: flake8
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Framework :: Flake8
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: flake8>=7
Provides-Extra: test
Requires-Dist: pytest>=9; extra == "test"

# flake8-llm-sunset

## Install

```console
$ uv tool install flake8 --with flake8-llm-sunset
```

## Usage

```console
% flake8 --select LSG examples/adk_example_fields_output_schema_agent.py
examples/adk_example_fields_output_schema_agent.py:14:11: LSG001 Gemini model 'gemini-2.0-flash' was shut down on 2026-06-01
```

## Model lifecycle data

Gemini and other Google model retirement dates are sourced from Google Cloud's
[Model versions and lifecycle (Markdown source)](https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/model-versions.md.txt).
Models without an announced retirement date are not checked.

## Error codes

Error-code prefixes identify the model provider:

| Prefix | Provider | Status |
| --- | --- | --- |
| `LSG` | Google | Supported |
| `LSO` | OpenAI | Planned |
| `LSA` | Anthropic | Planned |

| Code | Description |
| --- | --- |
| `LSG001` | A Google model has reached or passed its announced retirement date. |
| `LSG002` | A Google model is within one calendar month of its announced retirement date. |

On the announced retirement date, the diagnostic changes from `LSG002` to
`LSG001`.
