Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@ Explain:
- what functional source and configuration the template should generate; and
- how CI can validate it without paid credentials.

The project intentionally excludes ODMantic, AutoGOAL, archived FastUI, and
archived Reflex. A new proposal should meet the inclusion criteria in the
A new proposal should meet the inclusion criteria in the
[support model](docs/concepts/support.md).

## Develop a change
Expand Down
6 changes: 0 additions & 6 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,6 @@ deliberately.
and repository documentation, while retaining Linux, macOS, and Windows
generated-project gates.

### Removed

- ODMantic, AutoGOAL, FastUI, and Reflex are deliberately outside the supported
catalog. FastUI and Reflex are archived upstream; the other two do not fit the
accepted v0.5 scope.

### Migration

None. v0.5 is intentionally incompatible with v0.4 answers and generated
Expand Down
5 changes: 2 additions & 3 deletions docs/concepts/support.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,5 @@ may support fewer combinations and carries a narrower compatibility promise.

A component should add a distinct architectural role, have active maintenance,
support the template's Python baseline, and permit a meaningful automated test.
ODMantic, AutoGOAL, archived FastUI, and archived Reflex are intentionally not
included. New proposals should explain which layer they add and how a generated
project can validate the integration without embedding credentials.
New proposals should explain which layer they add and how a generated project
can validate the integration without embedding credentials.
5 changes: 2 additions & 3 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,9 +136,8 @@ Catalog entries use three intentionally visible tiers:
- `experimental`: useful but evolving integration with a narrower compatibility
promise.

ODMantic, AutoGOAL, archived FastUI, and archived Reflex are intentionally not
offered. The catalog favors maintained projects that add a distinct layer or a
clear end-to-end recipe.
The catalog favors maintained projects that add a distinct layer or a clear
end-to-end recipe.

## Develop the template

Expand Down
1 change: 0 additions & 1 deletion skills/compose-python-stack/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,5 @@ Turn a product goal into a supported stack, explain the consequential choices, a

- Treat catalog compatibility rules as authoritative; do not force an invalid combination.
- Preserve the first-class `python-library`, `typer-cli`, and `fastapi-api` paths.
- Do not propose ODMantic, AutoGOAL, FastUI, or Reflex; they are intentionally outside the supported catalog.
- Prefer Python 3.12 or newer and `uv` for environment and command execution.
- Never deploy, create paid resources, or write credentials unless the user explicitly authorizes that action.
1 change: 0 additions & 1 deletion skills/maintain-python-template/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,3 @@ Make catalog-driven changes without creating a choice that renders but cannot ru
- Optional layers must disappear cleanly when disabled.
- Conditional template path components must remain short enough to render on Windows.
- A deploy target keeps Docker portability; cloud IaC is limited to supported target/provider pairs.
- Do not reintroduce ODMantic, AutoGOAL, FastUI, or Reflex.
6 changes: 0 additions & 6 deletions tests/test_catalog.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,12 +85,6 @@ def test_data_choices_match_their_catalog_roles() -> None:
assert question_ids == catalog_ids, role


def test_deliberately_excluded_projects_stay_excluded() -> None:
text = (REPO / "catalog" / "components.yml").read_text().lower()
for excluded in ("autogoal", "odmantic", "fastui", "reflex"):
assert excluded not in text


def test_every_preset_is_exposed_by_copier() -> None:
config = yaml.safe_load((REPO / "copier.yml").read_text())
preset_choices = set(config["preset"]["choices"].values())
Expand Down