Skip to content

fix(ckpt): add RPM component identity - #2568

Open
zhangtaibo wants to merge 1 commit into
mainfrom
fix/ws-ckpt-tokenless-missing-provides
Open

fix(ckpt): add RPM component identity#2568
zhangtaibo wants to merge 1 commit into
mainfrom
fix/ws-ckpt-tokenless-missing-provides

Conversation

@zhangtaibo

@zhangtaibo zhangtaibo commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Why

The ws-ckpt RPM does not advertise its ANOLISA component identity. When the
component index is unavailable, RPM capability fallback cannot resolve the
package.

What changed

Added Provides: anolisa-component(ws-ckpt) to the ws-ckpt RPM spec. The
tokenless change was removed because it already landed in #2576.

Related issue

Related to #2575.

User / Agent impact

anolisa install and anolisa upgrade can resolve ws-ckpt through RPM
Provides when the repository-side component index is unavailable.

Risk and compatibility

  • Cross-component contract changed

Low risk: this adds the component identity capability expected by the existing
ANOLISA resolver and manifest contract.

Validation

  • git diff --check up/main...HEAD
  • Confirmed the PR contains one changed file and one added line.
  • Confirmed ws-ckpt and tokenless each declare exactly one component capability.
  • The original PR verified the ws-ckpt RPM build and capability on ALinux 4.
  • Local rpmspec validation was unavailable because the tool is not installed.

Documentation and rollback

No documentation change is required. Roll back by reverting the single
Provides line.

@qoderai qoderai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

本次审查范围内未发现需要修改的问题。


🤖 Generated by QoderView workflow run

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ad691f27ba

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/tokenless/tokenless.spec.in Outdated

@Forrest-ly Forrest-ly left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review — PR #2568 (commit ad691f2)

The spec changes themselves are correct ✅

  • Provides: anolisa-component(tokenless) (src/tokenless/tokenless.spec.in:11) and Provides: anolisa-component(ws-ckpt) (src/ws-ckpt/ws-ckpt.spec.in:13) exactly match src/anolisa/manifests/components-v2.toml (provides = "anolisa-component(tokenless)" / provides = "anolisa-component(ws-ckpt)") and the capability format generated by rpm_component_provide() in resolution.rs, so the third resolver fallback (rpm_package_provides_component) will work once rebuilt RPMs are published.
  • Preamble placement matches the established pattern (agentsight.spec.in:20, copilot-shell.spec.in:18, cosh-ng.spec.in:21, skillfs.spec.in:26).
  • Build verification (rpm -qp --provides) is documented in the PR description.

Requested changes (metadata only — no code edits)

1. Replace Fixes #2559 with Part of #2559.
#2559's primary component is agent-memory (its title and body target agent-memory.spec.in), and it additionally lists four more affected components: os-skills, tokenless, ws-ckpt, agent-sec-core. This PR only covers tokenless + ws-ckpt; agent-memory is fixed separately in #2560. Merging with Fixes #2559 will auto-close a P1 issue while os-skills.spec.in and agent-sec-core.spec.in still lack the Provides line.
Note Fixes #2559 appears in both the PR description and the commit message — auto-close can be triggered from either path on merge, so please update both.

2. Fix the failing Commit Message Lint check (scope-empty).
.github/commitlint.config.json sets scope-empty: [2, "never"] (error level), so the commit title requires a scope. Please amend, e.g.:

  • fix(tokenless): add missing Provides: anolisa-component(<name>) to tokenless and ws-ckpt specs, or
  • split into two commits fix(tokenless): ... + fix(ckpt): ... (valid scopes include tokenless and ckpt).
    A force-push amend is needed anyway for point 1 — please handle both in the same push.

Non-blocking notes

  • Follow-up still needed to fully close #2559: os-skills.spec.in needs Provides: anolisa-component(os-skills); agent-sec-core.spec.in needs Provides: anolisa-component(sec-core) (mind the component name is sec-core in components-v2.toml, not agent-sec-core).
  • Optional (echoing the bot's P2): if these components are republished at the same Version, consider bumping %define anolis_release to avoid an NVR collision with already-published RPMs.

- Declare the ws-ckpt RPM capability used by ANOLISA resolution.
- Keep the PR scoped to metadata not already present on main.

Fixes: edce583
 ("feat(ckpt): add component.toml for anolisa-cli adapter discovery")
Signed-off-by: kongche-jbw <kongche.jbw@alibaba-inc.com>
@kongche-jbw
kongche-jbw force-pushed the fix/ws-ckpt-tokenless-missing-provides branch from ad691f2 to f08a32b Compare August 15, 2026 03:11
@kongche-jbw kongche-jbw changed the title fix: add missing Provides: anolisa-component(<name>) to ws-ckpt and tokenless spec files fix(ckpt): add RPM component identity Aug 15, 2026
@kongche-jbw
kongche-jbw requested a review from Forrest-ly August 15, 2026 03:13

@Forrest-ly Forrest-ly left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review 通过(re-review @ f08a32b)。

上次 CHANGES_REQUESTED(@ad691f2)的两项元数据要求均已满足:

  1. 不再引用 Fixes #2559——PR body 改为 Related to #2575(5 个 spec 缺 Provides 的 umbrella issue),不会过早自动关闭 issue;body 与 commit message 中均无残留 #2559 引用。
  2. commit 标题已带 scope:fix(ckpt): add RPM component identity,commit-message lint 通过(CI 6/6 绿)。

改动核实:

  • 仅 1 个文件 1 行:src/ws-ckpt/ws-ckpt.spec.in 新增 Provides: anolisa-component(ws-ckpt),与 src/anolisa/manifests/components-v2.toml 中 ws-ckpt rpm backend 的 provides = "anolisa-component(ws-ckpt)" 契约一致,也符合 resolution.rs 解析的 capability 格式。
  • 格式与已合并的 tokenless(#2576)、agent-memory(#2560)spec 一致。
  • tokenless 改动已正确移除(已随 #2576 落地)。

提示:Forrest-ly 此前的 CHANGES_REQUESTED review 仍挂在 PR 上,两项要求均已解决,可 dismiss 或重新 review。os-skills / agent-sec-core 的 Provides 仍是后续 PR 的工作(不在本 PR 范围)。

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

Labels

component:ckpt src/ws-ckpt component:tokenless src/tokenless/

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants