Skip to content

fix(release): keep Codex example coverage out of source archives - #6161

Merged
Astro-Han merged 1 commit into
apache:mainfrom
Astro-Han:fix/release-source-codex-test
Oct 19, 2026
Merged

Astro-Han merged 1 commit into
apache:mainfrom
Astro-Han:fix/release-source-codex-test

Conversation

@Astro-Han

Copy link
Copy Markdown
Contributor

Summary

The Composer integration test added in #6158 reads the real Codex example's client.js from scripts/plugins. That example is deliberately excluded from ASF source archives, so qualification at 109cb74b8 fails with ENOENT even though checkout CI passes.

Move the real Codex integration case into its own test file and exclude it alongside the example, following #6159. Checkout UI tests still run the unchanged integration case. Share its existing fixture data and DOM actions with the generic recovery tests; those tests and the fixture stay in the source archive. Extend the existing archive regression to verify this boundary, and track the plugin fixture in that regression so its exclusion is actually exercised.

Product behavior is unchanged. The Runtime Host suite and every other workspace passed in the failed qualification; no additional timing changes are included.

Refs #6148, #6159, #6160.
Failed qualification: https://github.com/apache/maka/actions/runs/39204561159

Verification

  • Checkout Core/UI builds passed; all 783 UI tests passed, including the real Codex integration.
  • Created and extracted an actual source candidate at this commit, rebuilt UI, and passed all 782 retained UI tests. The plugin example and its integration test are absent; generic picker recovery and shared fixtures remain. This local check reused installed dependencies and built Core outputs; full clean-install source qualification remains pending merge.
  • No archived package test sources retain references to scripts/plugins.
  • Source-release suite: 23 tests passed. The new archive assertion failed before the export rule and passed after it.
  • npm run format, npm run lint, and git diff --check passed.
  • No local full-repository suite or E2E was run.

AI use

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: Codex diagnosed the archive dependency, separated the integration coverage, shared the test fixture, and ran the checks above.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes — described under Summary above
  • No

@Astro-Han
Astro-Han marked this pull request as ready for review October 19, 2026 05:44

@me2seeks me2seeks left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Automated review notice: This review was prepared and posted by an automated agent on behalf of me2seeks.

Reviewed exact head 79044fe. No blocking findings.

The archive failure is addressed at the correct boundary: the repository-only Codex integration moves unchanged into its own export-ignored test file, while generic Composer recovery coverage and its shared fixture remain in the source archive. I compared the moved integration test body with the exact base and confirmed it is unchanged. Production code is untouched.

Validation performed:

  • Generated the required model metadata and built exact-head Core and UI successfully using existing installed dependencies.
  • Checkout Composer recovery plus real Codex integration: 10/10 passed.
  • Source-release suite: 23/23 passed. Removing only the new export-ignore rule makes the archive regression fail as expected; the worktree was restored afterward.
  • Created and extracted a real git archive of this head. Confirmed the plugin example and Codex integration test are absent, while generic recovery and shared fixtures remain. Rebuilt archived UI and passed retained recovery tests 9/9, reusing installed dependencies and matching built Core outputs.
  • No retained archived package test sources reference scripts/plugins; git diff --check passed.

Limits: this was not a clean-install full source qualification, full repository suite, or Desktop E2E. At the final status refresh, the CI test and effort-label runs were queued, Windows packaging was in progress, the PR was mergeable but blocked, and GraphQL reported zero review threads. Approval does not substitute for those checks or merge the PR.

@chihumyum chihumyum left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@M4n5ter M4n5ter left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

English

Approve. Reviewed head 79044fe55cf14452a0d3fe570e13e7942ba73cbb; no blocking findings.

The fix addresses the archive boundary correctly: the repository-only Codex integration test is excluded alongside its plugin example, while generic Composer recovery coverage and shared fixtures remain in the source archive. Test bodies and fixture definitions are unchanged, and checkout test discovery still includes the moved integration test.

Validation:

  • Source-release tests: 23/23 passed.
  • Checkout Composer recovery and Codex integration: 10/10 passed.
  • Extracted source archive recovery tests: 9/9 passed.
  • Confirmed actual archive contents; removing the new export-ignore rule makes the archive regression fail as expected.

Limits: Core builds passed. In the local minimal dependency environment, UI typechecking reported the same nine existing errors on the base, head, and extracted archive. Full clean-install source qualification, the full repository suite, and E2E were not completed. CI was still running when last checked.

中文

同意合并。已审查提交 79044fe55cf14452a0d3fe570e13e7942ba73cbb,未发现阻塞问题。

修复正确落在归档边界:依赖仓库内 Codex 示例的集成测试随示例一起排除,通用 Composer 恢复测试及共享 fixture 继续保留在源码包中。测试主体和 fixture 定义没有变化,仓库测试命令仍会发现迁出的集成测试。

验证结果:

  • 源码发布脚本测试:23/23 通过。
  • 仓库中的 Composer 恢复及 Codex 集成测试:10/10 通过。
  • 解压源码包后的恢复测试:9/9 通过。
  • 已核对真实归档内容;移除新增的 export-ignore 规则后,归档回归测试按预期失败。

验证限制:Core 构建通过。本地最小依赖环境下,基线、PR 提交和解压源码包的 UI 类型检查均出现相同的九处既有错误。未完成干净安装的完整源码发布验证、全仓库测试及 E2E。最后检查时 CI 仍在运行。

@Astro-Han
Astro-Han merged commit 3a036b2 into apache:main Oct 19, 2026
3 of 4 checks passed
@Astro-Han
Astro-Han deleted the fix/release-source-codex-test branch October 19, 2026 06:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/M Under 500 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants