mirror of
https://github.com/Comfy-Org/comfy-python-sdk.git
synced 2026-11-04 23:37:47 +00:00
[PR #60] [MERGED] docs: add AGENTS.md covering codegen drift and the required checks #62
Labels
No labels
audit:ai-readiness
audit:community
audit:github
audit:health-scoring
audit:policy
audit:release
audit:supply-chain
effort:medium
effort:small
effort:small
effort:trivial
priority:nice-to-have
priority:nice-to-have
priority:recommended
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/comfy-python-sdk#62
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Comfy-Org/comfy-python-sdk/pull/60
Author: @christian-byrne
Created: 8/19/2026
Status: ✅ Merged
Merged: 8/23/2026
Merged by: @christian-byrne
Base:
main← Head:docs/agents-md📝 Commits (1)
813e23adocs: add AGENTS.md covering codegen drift and the required checks📊 Changes
1 file changed (+173 additions, -0 deletions)
View changed files
➕
AGENTS.md(+173 -0)📄 Description
Closes #58
Adds
AGENTS.md. Every claim is sourced from.github/workflows/ci.yml,scripts/, orpyproject.toml— no generic filler, and it does not restatepyproject.toml.The two traps it exists for
1. Hand-editing a generated file passes local review and fails
codegen-drift.src/comfy_low/models/_generated.pyis committed, so it reads as ordinary source, and nothing local objects: ruff has it inextend-exclude,ruff formatskips it for the same reason, and mypy lists it inexclude.scripts/check_drift.pythen regenerates it and compares byte for byte, so the edit only surfaces in CI. The file names all three exclusions so the reason it slips through is explicit, and flags thatspec/openapi.yamlis a one-way vendored copy — editing the spec to make drift pass is the wrong fix in the other direction.Reviewer check:
pyproject.toml[tool.ruff] extend-exclude,[tool.mypy] exclude, and the byte comparison inscripts/check_drift.py.2. mypy is required and undiscoverable.
There is no
typecheckscript, no Makefile, no pre-commit config —mypy srcexists only as a step inci.yml. The file lists all four required commands in CI order and notes it ismypy src, not the whole repo.Reviewer check: the
testjob steps in.github/workflows/ci.yml.Also covered
models/__init__.pyis hand-written and codegen does not touch it, so a new schema needs its import list and__all__updated by hand.gen_models.shis bash —python scripts/gen_models.sh(asREADME.mdcurrently suggests) does not work — and why thedatamodel-code-generator ~=0.68.1pin is load-bearing for a byte-for-byte gate.uv run --extra dev <cmd>. Dev tools are an extra, not a dependency group, so they are outside the default sync set. Notes that CI itself usespip install -e .[dev].public-repo-hygiene: all three categories fromscripts/check_public_repo_hygiene.py(ticket-shaped IDs, internal collaboration-tool links, default-denyComfy-Org/<repo>and@Comfy-Org/<team>allowlists), plus the rule that a false positive means an allowlist entry with a comment, never a looser regex.build-check: the sdistincludelist is explicit, so a new top-level directory silently will not ship.tests/test_spec_coverage.pyrequiresOPERATION_IDS,OPERATION_METHODS, and a method on bothComfyLowandAsyncComfyLow.filterwarningspromotes deprecations to errors; the suite is network-free via theconftest.pystub server; the gateway e2e test is collected but skips withoutCOMFY_BASE_URL+COMFY_API_KEY;__version__comes from dist metadata so it must not be hardcoded.python3 scripts/check_public_repo_hygiene.pypasses on the new file.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.