Skip to content

ci: add mlops-sklearn-starter profile and github-setup support (fixes #92) - #179

Open
emberb170d wants to merge 5 commits into
Create-Python-App:mainfrom
emberb170d:fix/issue-92-ai-ml-ci-profile
Open

ci: add mlops-sklearn-starter profile and github-setup support (fixes #92)#179
emberb170d wants to merge 5 commits into
Create-Python-App:mainfrom
emberb170d:fix/issue-92-ai-ml-ci-profile

Conversation

@emberb170d

Copy link
Copy Markdown
Contributor

Problem

Issue #92 requests AI/ML CI trust requirements: bare L1 jobs for every new AI/ML template type, L2 pytest on generated projects, and documentation in each AI/ML profile under `ci/profiles/`.

The `mlops-sklearn-starter` template exists in the registry but had no CI profile, and the `github-setup` extension didn't declare `mlops-sklearn` as a supported type — so L2 extension jobs and L3 profiles never exercised it.

Solution

  • Create `ci/profiles/mlops-sklearn-default.json` — a profile that scaffolds `mlops-sklearn-starter` with `github-setup`, giving a bare L1 job (template alone) and L2 coverage (template + extension) with pytest green on the generated project.
  • Add `mlops-sklearn` to the `github-setup` extension `type` array in `templates.json` so CI profiles
    and L2 extension jobs cover the sklearn MLOps template.
  • Both templates.json and ci/profiles validated against registry

This fulfills the acceptance criteria:

  • `mlops-sklearn-starter` has a bare L1 job (via `ci-templates.yml`)
  • L2 runs pytest in the generated project (via `run-scaffold-check.py`)
  • Profile documented under `ci/profiles/`

User Impact

MLOps sklearn starter templates now get first-class CI coverage: scaffold integrity, lint, type-check, and pytest in generated projects.

Fixes#92

…-App#119
Added comprehensive authoring rules, checklist, and rationale guidance for
declarations in templates.json.
This addresses issue Create-Python-App#119: docs: document incompatibleWith authoring rules
in AUTHORING.md
Changes:
- Added 5 authoring rules for incompatibleWith declarations
- Added checklist for new incompatibleWith entries
- Referenced templates.schema.json validation
- Defined when to use vs skip incompatibility
…reate-Python-App#92)
- Create ci/profiles/mlops-sklearn-default.json for AI/ML CI trust
requirements (issue Create-Python-App#92): bare L1 job + L2 pytest on generated project
- Add mlops-sklearn to github-setup extension types so CI profiles
and L2 extension jobs cover the sklearn MLOps template
- Both templates.json and ci/profiles validated against registry
@coderabbitai

coderabbitaiBot commented Aug 21, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 2ac40166-f45e-4e23-b06b-8e00311af676


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

… fastapi-opentelemetry
- Add mlflow-tracing vs opentelemetry incompatibility to matrix in docs/AI_ML_AUTHORING.md
- Declare incompatibleWith on both extensions in templates.json
- Neither exists yet; document the rule for when they ship
Co-authored-by: openhands <openhands@all-hands.dev>
@ulises-jeremias

Copy link
Copy Markdown
Member

Thanks for the follow-up! The CI profile work itself looks on track, but the branch currently conflicts with main (the registry/profile plumbing has moved since this was opened).

Please rebase onto the latest main and force-push — happy to review right after.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AI/ML CI trust: bare L1 jobs + pytest in L2 generated projects

2 participants

@emberb170d@ulises-jeremias