Commit Graph
2 Commits
Author SHA1 Message Date
DumiFlex 730721fa1a feat(registry): comfyignore + 21:9 banner + includes + collapsed changelog header
Five tightly-related changes to the registry-publishing path.

.comfyignore
  Drops dev-only + repo-plumbing files from the registry archive
  even though they stay in git: src/ (frontend source), tests/,
  .github/, .husky/, public/images/docs/ (doc screenshots used at
  SPA build time, baked into web/ anyway), vite + eslint + commitlint
  + semantic-release configs, scripts/, repo metadata (CHANGELOG,
  CONTRIBUTING, CODEOWNERS, CODE_OF_CONDUCT, SECURITY). Syntax is
  gitignore-style globs per the Registry spec.

[tool.comfy] in pyproject.toml
  - Banner: 21:9 svg at public/images/comfy-banner.svg served via
    raw.githubusercontent so the listing card on registry.comfy.org
    renders the project banner instead of an empty placeholder.
  - requires-comfyui = ">=0.3.36" — floor that introduces the V3
    io.* schema (io.Schema, io.ComfyNode, @comfytype, ComfyTypeIO)
    the entire wp_nodes/ tree uses. Older runtimes would fail at
    import; the Manager warns instead.
  - includes = ["js", "web"] — both build-output trees are
    gitignored, so without this the registry archive would ship
    without the canvas widgets (js/) or the manager SPA (web/).

public/images/comfy-banner.svg
  Standalone 1400×600 svg (≈2.33:1, matches 21:9). Left half: title +
  underline accent + tagline + module-kind badges (Wildcard / Fixed /
  Combine / Derivation / Constraint, kind-colored). Right half: WP
  Context → emits → resolved $vars → fills → Prompt Assembler flow.
  Faint canvas-grid background so it reads as "this lives in
  ComfyUI" at a glance.

scripts/pack-release.mjs
  Fixes the manager outDir literal: ships web/ (the actual vite
  outDir per vite.config.mts), not the stale web_dist/ name in the
  CLAUDE.md comment. Without this the github-release zip would
  ship without the SPA.

.releaserc.js — collapsed-changelog header / footer partials
  release-notes-generator's writerOpts now wraps the per-commit
  list in a <details> element with a fixed "Wildcard Pipeline
  <version>" + doc/discord/install/issues links header. GitHub
  renders <details> natively in release markdown — readers see the
  TL;DR + 5 useful links above the fold (well under GitHub's
  "Read more" character cutoff) and click to expand the full
  feat/fix/perf log. The header text is also the part most likely
  to stay useful weeks after the release.
2026-05-28 14:09:39 +03:00
DumiFlex 9b91012195 feat(github): publish workflow + issue/PR templates + release-zip + cleaner notes
Drops six pieces of repo plumbing in one go.

publish workflow (.github/workflows/publish.yml)
  Fires on every published GitHub release + manual dispatch. Builds
  the extension + manager SPA, then invokes Comfy-Org/publish-node-action
  with REGISTRY_ACCESS_TOKEN so the ComfyUI Manager listing stays in
  lockstep with semantic-release tags. Without this the README's
  "search Wildcard Pipeline in the ComfyUI Manager" path would never
  see new versions.

issue + PR forms (.github/ISSUE_TEMPLATE/, PULL_REQUEST_TEMPLATE.md)
  - config.yml: blank issues off, three contact links (Discord first,
    Discussions, Wiki).
  - bug_report.yml: structured form with version chip, multi-select
    surface dropdown covering all 10 nodes + 5 SPA areas + engine +
    build, ComfyUI version, OS, Python version, repro, expected vs
    actual, traceback (shell render), workflow JSON (json render),
    WP Debug warnings paste-box.
  - feature_request.yml: problem + proposal + alternatives + scope +
    importance dropdown; nudges toward "describe the underlying
    problem, not just the solution".
  - PULL_REQUEST_TEMPLATE.md: summary, conventional-commit type
    checkboxes mapped to release impact, related-issues line,
    local-verification gate checklist, screenshots prompt for
    visible changes, risk callout box.

release-zip + cleaner notes (.releaserc.js + scripts/pack-release.mjs)
  - Switched commit-analyzer + release-notes-generator to the
    conventionalcommits preset (already a transitive dep, no install).
  - Marked chore/docs/style/test/build/ci as hidden:true so they
    don't render in the GitHub release body. Only feat/fix/perf/
    refactor/revert show. Past releases (v1.8.0) keep their long
    notes; v1.9.0+ ships clean.
  - New scripts/pack-release.mjs zips the deployable file set
    (engine/, wp_nodes/, wp_api/, js/, web_dist/, public/, docs/help/,
    __init__.py, pyproject.toml, README.md, LICENSE) into
    dist/ComfyUI-Wildcard-Pipeline-v<version>.zip.
  - @semantic-release/exec prepareCmd runs the version-stamping
    AND the pack-release.mjs invocation so the zip carries the
    right version in its name.
  - @semantic-release/github assets config attaches the zip to the
    GitHub release page so manual installers can grab a single
    artifact instead of cloning at a specific tag.

Notes on what's NOT changed:
  - ci.yml + release.yml stay as-is — local versions are a strict
    superset of origin's (coverage gate, perf gate, fuzz job,
    bundle-size budget). Release workflow already had the env +
    permissions needed for semantic-release.
  - bundle-size-pr.yml stays (local-only, useful).
2026-05-28 13:42:51 +03:00