docs(baseline-kit): no-emit required for Pattern A + correct per-repo mapping - #2208
Conversation
…apping The consistency pass surfaced that the "Pattern A variant without no-emit" is not a working variant — it is the uv "conflicting URLs for app-baseline-kit" bug (unpinned @main in pyproject vs SHA-pinned lock), which a warm uv cache can mask. Pension-Data hit it (fixed PR #498). Rewrite that callout as a warning and state no-emit-package is required for Pattern A. Correct the per-repo mapping to reflect reality after the migrations: - PAEM was actually frozen at a SHA (not @main); migrated to A+no-emit (PR #1857). - Pension-Data: A+no-emit (PR #498), excluded from lock. - LMS: migrated from frozen SHA to A+no-emit (PR #232); no current Pattern C repos. - TMP: note it should add no-emit on its next lock regen. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Workflow source neededPR #2208 needs either a linked GitHub issue or one valid non-issue Workflow Source before PR metadata automation can manage it safely. Please do one of:
Once a valid source is present, this warning will not be reposted. |
|
Gate fast-pass: docs-only change detected; heavy checks skipped. |
Automated Status SummaryHead SHA: a94b973
Updated automatically; will refresh on subsequent CI/Docker completions. Keepalive checklistScopeNo scope information available Tasks
Acceptance criteria
|
There was a problem hiding this comment.
Pull request overview
Updates the app-baseline-kit dependency pattern guide to reflect that omitting no-emit-package causes uv conflicting-URL failures on cold-cache resolves, and refreshes the per-repo pattern mapping after recent migrations.
Changes:
- Marks
[tool.uv.pip] no-emit-packageas required for Pattern A (removes the prior “no no-emit” variant guidance). - Updates Pattern C section to reflect no current instances (LMS migrated).
- Corrects the per-repo mapping table entries for PAEM, Pension-Data, and LMS.
| > then **conflict**, and `uv` aborts with *"Requirements contain conflicting URLs | ||
| > for package `app-baseline-kit`"* on any **cold-cache** resolve. A warm uv cache | ||
| > can mask this, so such a repo may merge green once and then fail a later CI run | ||
| > for no apparent change. `Pension-Data` hit exactly this (fixed in PR #498 by |
| **Current instances: none.** `learning-management-system` was the last Pattern C | ||
| repo; it was migrated to Pattern A in PR #232. This section is retained to | ||
| document why a frozen SHA is rejected. |
| | `Portable-Alpha-Extension-Model` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (migrated from a frozen SHA, PR #1857) | | ||
| | `Pension-Data` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (added `no-emit` to fix a conflicting-URL failure, PR #498) | | ||
| | `Travel-Plan-Permission` | custom (`tp_build_backend`) | **B** (lock-only) | SHA `13f94883…` | no | CI `-r requirements.lock`; local `requirements-baseline.txt` | | ||
| | `learning-management-system` | setuptools | **C** (frozen SHA — migrate to A) | SHA `13f94883…` | no | `-r requirements.lock` (pinned SHA) | | ||
| | `learning-management-system` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (migrated from a frozen SHA, PR #232) | |
| | `Trend_Model_Project` | setuptools | **A** (unpinned) | absent | yes | `pip install -e .[dev]` from `@main` | | ||
| | `Portable-Alpha-Extension-Model` | setuptools | **A** (unpinned `@main`) | absent | yes | `pip install -e .` from `@main` (PEP 508 URL-pinned, not version-pinned) | | ||
| | `Pension-Data` | setuptools | **A variant** (`@main` in pyproject, SHA in lock) | SHA `13f94883…` | yes (on lock regen) | CI installs `-r requirements.lock` (pinned SHA) | | ||
| | `Trend_Model_Project` | setuptools | **A** (unpinned; add `no-emit` on next lock regen) | absent | yes | `pip install -e .[dev]` from `@main` | |
| > then **conflict**, and `uv` aborts with *"Requirements contain conflicting URLs | ||
| > for package `app-baseline-kit`"* on any **cold-cache** resolve. A warm uv cache | ||
| > can mask this, so such a repo may merge green once and then fail a later CI run | ||
| > for no apparent change. `Pension-Data` hit exactly this (fixed in PR #498 by |
| **Current instances: none.** `learning-management-system` was the last Pattern C | ||
| repo; it was migrated to Pattern A in PR #232. This section is retained to | ||
| document why a frozen SHA is rejected. |
| | `Portable-Alpha-Extension-Model` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (migrated from a frozen SHA, PR #1857) | | ||
| | `Pension-Data` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (added `no-emit` to fix a conflicting-URL failure, PR #498) | | ||
| | `Travel-Plan-Permission` | custom (`tp_build_backend`) | **B** (lock-only) | SHA `13f94883…` | no | CI `-r requirements.lock`; local `requirements-baseline.txt` | | ||
| | `learning-management-system` | setuptools | **C** (frozen SHA — migrate to A) | SHA `13f94883…` | no | `-r requirements.lock` (pinned SHA) | | ||
| | `learning-management-system` | setuptools | **A** (+no-emit) | excluded (no-emit) | yes | `pip install -e .[dev]` from `@main` (migrated from a frozen SHA, PR #232) | |
| | `Trend_Model_Project` | setuptools | **A** (unpinned) | absent | yes | `pip install -e .[dev]` from `@main` | | ||
| | `Portable-Alpha-Extension-Model` | setuptools | **A** (unpinned `@main`) | absent | yes | `pip install -e .` from `@main` (PEP 508 URL-pinned, not version-pinned) | | ||
| | `Pension-Data` | setuptools | **A variant** (`@main` in pyproject, SHA in lock) | SHA `13f94883…` | yes (on lock regen) | CI installs `-r requirements.lock` (pinned SHA) | | ||
| | `Trend_Model_Project` | setuptools | **A** (unpinned; add `no-emit` on next lock regen) | absent | yes | `pip install -e .[dev]` from `@main` | |
Follow-up to #2206. The consistency pass + fresh CI revealed the "Pattern A variant without no-emit" is actually the uv conflicting-URL bug (masked by warm caches). Makes no-emit required for Pattern A and corrects the mapping table after the PAEM (#1857), Pension-Data (#498), and LMS (#232) migrations. Doc-only.
🤖 Generated with Claude Code