← Back to issue list

chore(merge): update starbase (2026-10-13)

View original Github issue

Metadata

Project
craft-store
Number
#440
Type
pull request
State
closed
Author
lengau
Labels
—
Created
Updated
Closed

Current evaluation

Superseded by a recreation under the LoweRAM account to preserve correct PR authorship and provenance comments.

Resolution: closed superseded

Reason: The PR was closed because it was superseded by a recreation under the LoweRAM account to ensure correct author attribution and maintain provenance comments, as explicitly stated in the closing comments by both lengau and LoweRAM.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Rebuild of the Starbase sync, rebased onto the current heads of both `origin/main` (`fe67242`) and `starbase/main` (`1104bc6`). History was rewritten — see the comment below. ## What changed since the previous revision **Pulled from `starbase/main` (5 commits):** | Commit | Change | |---|---| | `1104bc6` | `style: drop mypy, pyright (#624)` — removes `[tool.mypy]`, `[tool.pyright]`, the `mypy` dependency-group entries, and the `lint-mypy`/`lint-pyright`/`install-pyright` targets from `common.mk` | | `cb4cb54` | `build(deps): lock file maintenance (#622)` | | `26946d1` | `build(deps): update github actions (#618)` | | `3a6537c` | `build(deps): update dependency mypy to ~=2.4.0 (#619)` — superseded by `#624` | | `e71c218` | `build(deps): update astral-sh/setup-uv action to v10 (#620)` | **Pulled from `origin/main`:** all commits since the previous revision, including the now-merged prep PRs #435 (tombi format) and #437 (Vale guards). ## Regression fixes from the previous revision The previous revision of this PR was broken; all three are fixed here: 1. **`uv.lock` no longer breaks the build.** Previously Starbase's lockfile was taken wholesale, so `craft-store` was not a workspace member and `make test-fast` failed with `` The lockfile at `uv.lock` needs to be updated, but `UV_FROZEN=1` was provided: Missing workspace member `craft-store`. ``. `uv.lock` is a child-owned file; it is now kept from the child and regenerated with `uv lock` from the merged dependency set. `make test-fast` passes (266 passed). 2. **`Makefile` `PROJECT` is no longer `starcraft`.** It now stays `craft_store`, so `make format` no longer fails with `Failed to format starcraft: No such file or directory`. 3. **`pyproject.toml` no longer drops two build sections.** `[tool.setuptools]` `package-data` (the `py.typed` marker) and `[tool.setuptools.packages.find]` are preserved, and the stale `[tool.mypy]`/`[tool.pyright]` sections are gone (Starbase dropped them in #624). ## Conflict resolution Resolved per `references/file_ownership.md`: - **Kept child (`--ours`):** `.github/workflows/qa.yaml`, `.pre-commit-config.yaml`, `CONTRIBUTING.md`, `docs/conf.py`, `docs/explanation/documentation.rst`, and `uv.lock` (regenerated). - **Took from `starbase/main`:** `.github/workflows/check-renovate.yaml`, `.github/workflows/release-publish.yaml`, `common.mk`. - **`tics.yaml`** — kept the reusable-workflow call from Starbase but restored the required `with.project` input to `craft-store`. The ownership map explicitly forbids leaving this input commented out, and Copilot flagged the commented-out version separately. - **`Makefile`** (mixed ownership) — kept the child-owned `PROJECT=craft_store`, took Starbase's new `format-tombi`/`lint-tombi` targets, and dropped the `pack-snap` target because this library has no `snap/snapcraft.yaml` prerequisite so the target can never run (also flagged by Copilot). - **`pyproject.toml`** — kept the child's `[project]`, `[dependency-groups]`, `[build-system]`, `[tool.setuptools]`, `[tool.setuptools_scm]`; merged `tool.uv.constraint-dependencies` by taking the higher version from each side ordered alphabetically; kept Starbase's `tool.ruff` block except `tool.ruff.src` and `tool.ruff.target-version`, adding the child's entries to `tool.ruff.extend-exclude` and `tool.ruff.lint.ignore`. ## Library-repo deletions (rule 1b) These never raise a conflict, so they are applied explicitly: - `AGENTS.app.md` - `.github/README.md` (Starbase ships this scaffold; it never appears as a conflict) - `docs/release-notes/` - `starcraft/__init__.py` and `tests/*/starbase/test_init.py` (Starbase scaffold) ## Validation status | Command | Result | |---|---| | `make test-fast` | **PASS** — 266 passed, 34 deselected | | `make format` | **FAIL** — 24 ruff findings. See the pending prep PR below. | | `make lint` | **FAIL** — same ruff findings | | `make docs` | **FAIL** — pre-existing and environmental; fails identically on `main` (`find: '../.venv/lib/python*/site-packages/vale/vale_bin': No such file or directory`), so it is not introduced by this merge | `make format` / `make lint` fail because Starbase has substantially expanded `tool.ruff.lint.select` since the last sync (adding `ASYNC`, `S*`, `FBT`, `COM`, `PIE*`, `SLF`, `TID`, `TC001`–`TC003`, `FIX`, `FLY`, `PERF`, `B035`, `RUF001`–`RUF013`, `RUF100`, `RUF200`). Taking that list is the correct resolution per the ownership map — the child adds nothing to it — but it surfaces new findings in this repository's source. Those findings are being fixed in a separate preparation PR rather than bundled here. Per the preparation-PR rules, this PR stays in draft until that prep PR is merged. ## Pending preparation PR See the comment below for the prep PR that addresses the ruff findings surfaced by Starbase's expanded `tool.ruff.lint.select`.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b — closed superseded Superseded by a recreation under the LoweRAM account to preserve correct PR authorship and provenance comments.

Update history

Date Change
closed
updated
updated
updated
updated
updated
created

Related issues

Issue Project State Summary Similarity
#259 chore(merge): update starbase (2026-10-08) craft-archives closed Superseded by a rebase from the correct GitHub account. Force-pushed to incorporate canonical/starbase#617.
86%
#238 chore(merge): update starbase (2026-07-16) craft-archives closed PR #238 was closed unmerged after an external linkcheck timeout; its Starbase sync was later merged through replacement PR #252.
84%
#236 chore(merge): update starbase (2026-06-18) craft-platforms closed Starbase sync PR #236 was closed unmerged; rebuilt replacement #270 later merged Starbase into main as commit 4afcee7.
83%
#2895 chore(merge): update starbase (2026-09-24) charmcraft closed Draft Starbase sync PR #2895 (2026-09-24) was closed unmerged; the same update was reworked as #2899 (2026-09-28), which merged as commit 8da01822 after prep PRs #2897/#2898.
82%
#236 chore(merge): update starbase (2026-07-14) craft-archives closed Closed unmerged; the Starbase update was later merged through #252 in commit 1b56643.
81%
#387 chore(merge): update starbase (2026-06-18) craft-store merged Merged PR #387 in commit 5c83549, updating Starbase docs/build tooling while preserving craft-store-specific CI and CODEOWNERS files.
81%
#438 chore(merge): update starbase (2026-10-09) craft-store closed Routine starbase dependency update PR closed due to failing CI checks and lack of review. Superseded by subsequent starbase syncs.
80%
#237 chore(merge): update starbase (2026-07-14) craft-archives closed PR #237 was closed unmerged after failing CI checks and leaving 29 review comments unresolved; no resolving commit was identified.
80%
#1728 chore(merge): update starbase (2026-10-01) craft-parts merged Merged #1728 into main as d2be519e, syncing starbase/main's build, CI, docs tooling, Ruff 0.16, Sphinx Stack, and AGENTS.md updates.
79%
#433 chore(merge): update starbase (2026-10-08) craft-store closed Merged routine starbase dependency and tooling updates with conflict resolutions applied to align with starbase/main.
79%