Merge blocked
感谢提交 Pull Requests !此PR未通过DCO校验。
校验失败可能原因:
1. 未签署“DCO协议”(开发者原创声明协议),在线签署、查看签署状态。
2. Commits 中未包含 Signed-off-by信息,参考FAQ处理。
修复上述问题后,在PR的评论框输入“check dco” ,单击”评论”,系统将再次进行DCO校验。
当前检测到如下Commits 未包含Signed-off-by信息:
Thanks for submitting a pull request. This pull request has not passed the DCO check.
Possible causes:
1. You have not signed the Developer Certificate of Origin (DCO). Sign the DCO and check DCO status.
2. The commits do not contain the Signed-off-by information. To resolve this issue, see FAQs.
After resolving the preceding issues, enter check dco in the comment box of this pull request and click Comment. The system will check DCO status again.
The following commits do not contain the Signed-off-by information:


【AI-Review】【一般】【基础代码问题】【代码逻辑错误】
● 问题: case_demo/scripts/build.ps1:8 的自动安装命令为 npm.cmd install --no-audit --no-fund,未带 --legacy-peer-deps,而同仓库 example/package.json 的全部安装脚本(i/install:pkg/fast:pkg)与本 PR case_demo/README.md:63 的手动步骤均使用 npm install --legacy-peer-deps。在从零拉取(node_modules 不存在)后执行 pwsh -File scripts/build.ps1 时,@react-native-oh/react-native-harmony@0.72.139 与 react-native@0.72.5 等依赖存在 peer 冲突,npm 默认会抛出 ERESOLVE could not resolve 并中断,使该脚本与 README 共同声明的"一键构建"路径无法跑通。
● 影响: 文档承诺的 pwsh -File scripts/build.ps1 自动构建在首次执行时即失败;使用者必须回退到 README 的手动步骤才能完成安装,构建脚本未达到其封装目的。
● 建议: 在 build.ps1:8 的 npm.cmd install 后追加 --legacy-peer-deps,与 README 及 example 实践保持一致。


【AI-Review】【建议】【软件设计】【冗余重复代码】
● 问题: case_demo/harmony/codelinter.json:5 与 case_demo/harmony/codelinter.json:7 均为 "**/node_modules/**/*",ignore 数组中同一规则重复出现两次。
● 影响: 无功能影响,但重复项增加阅读噪音,后续维护 ignore 列表时易误判已覆盖范围。
● 建议: 删除第 7 行重复的 "**/node_modules/**/*"。


【AI-Review】【建议】【编码规范】【注释/可读性】
● 问题: case_demo/harmony/entry/src/main/ets/pages/Index.ets:89-90 的注释为"to load the bundle from file, place it in /data/app/el2/100/base/com.rnoh.tester/files/bundle.harmony.js on your device",其中 com.rnoh.tester 是 RNOH tester 工程的 bundleName,与本 Demo 的 com.example.datetimepicker.casedemo072(case_demo/harmony/AppScope/app.json5:3)不一致。该注释是从 example 模板复制而来,未按本 Demo 的实际包名更新。
● 影响: 若使用者按注释把 bundle 推到 /data/app/el2/100/base/com.rnoh.tester/...,将找不到文件,FileJSBundleProvider('/data/storage/el2/base/files/bundle.harmony.js')(第 91 行)的实际路径与注释也不对应,误导调试。
● 建议: 将注释中的示例路径更新为本 Demo 沙箱对应的路径,或直接删除该 NOTE,避免与实际 FileJSBundleProvider 参数脱节。


感谢提交 Pull Requests !此PR未通过DCO校验。
校验失败可能原因:
1. 未签署“DCO协议”(开发者原创声明协议),在线签署、查看签署状态。
2. Commits 中未包含 Signed-off-by信息,参考FAQ处理。
修复上述问题后,在PR的评论框输入“check dco” ,单击”评论”,系统将再次进行DCO校验。
当前检测到如下Commits 未包含Signed-off-by信息:
Thanks for submitting a pull request. This pull request has not passed the DCO check.
Possible causes:
1. You have not signed the Developer Certificate of Origin (DCO). Sign the DCO and check DCO status.
2. The commits do not contain the Signed-off-by information. To resolve this issue, see FAQs.
After resolving the preceding issues, enter check dco in the comment box of this pull request and click Comment. The system will check DCO status again.
The following commits do not contain the Signed-off-by information:


追加提交 5ecb49c:chore(case-demo): 将 harmony/build-profile.json5 纳入版本管理
背景
按「真机拉下来就能跑」验证时发现:case_demo/harmony/.gitignore 把 /build-profile.json5 排除了(注释写明是为把签名配置留在本地),但没有任何脚本会生成它——scripts/build-support.ps1:12 直接 [IO.File]::ReadAllText($taskProfilePath) 读取该文件,README 的手动步骤同样依赖它。
实测(git archive HEAD 导出的全新目录):
> hvigor ERROR: 00304035 Not Found
Error Message: Cannot find project build file build-profile.json5 under folder: <...>/case_demo/harmony.
本次改动
- 移除
case_demo/harmony/.gitignore中/build-profile.json5忽略规则及对应注释; - 提交
case_demo/harmony/build-profile.json5:signingConfigs: []、compatibleSdkVersion 5.0.0(12)、targetSdkVersion 6.0.1(21),模块仍为entry+datetimepicker。签名仍由scripts/build.ps1 -SigningConfig本地注入并在构建后还原,仓库内不留签名材料。
验证(真机 SUP-AL90 / API 21)
- 全新目录按 README 顺序
npm install→ohpm install→codegen-harmony→npm run bundle:harmony→hvigorw assembleHap已能推进到 native 编译(不再报 00304035); - 本分支 case_demo 已在真机安装启动,渲染
br_rnoh0.72 · 共 4 条用例与DTP-072-01。


修改点
新增
case_demo/用例展示工程(48 个文件),不修改src/、harmony/等库源码:src/models/testCase.ts、src/components/CaseCard.tsx、src/pages/HomePage.tsx、src/caseRegistry.tsDTP-072-01..04):date+spinner 的onChange(仅type=set)、time 的is24Hour、date+compact 日历展开、date+spinner 动态更新valueexample/harmony裁剪(harmony/),bundleNamecom.example.datetimepicker.casedemo072,signingConfigs: []scripts/build.ps1、scripts/build-support.ps1、README.md根因分析
不涉及缺陷修复。本分支此前只有
example/宿主工程,缺少按用例组织、可在真机逐条执行并给出结论的展示 Demo,导致适配能力无法被系统性验证。方案说明(AI输出)
require('../../src/index.js')引用当前分支库入口,被测库不重复安装、不改源码;Metro 通过watchFolders监视仓库根,并排除oh_modules/build/.cxx/.hvigor。context.write()追加实际结果、context.decide()给出「通过 / 未通过 / 需要人工判断」。case_demo/,不影响src/、harmony/、example/与门禁编译。compatibleSdkVersion 5.0.0(12)、targetSdkVersion 6.0.1(21)、runtimeOS HarmonyOS、abiFilters arm64-v8a。测试情况
新增测试用例
case_demo/src/caseRegistry.ts→DTP-072-01/02/03/04共 4 条 ✅ 已实现手动验证
资料修改
case_demo/README.md说明构建顺序与用例清单private,不改库版本)依赖关系变更
无。
case_demo/package.json中的@react-native-community/datetimepicker@7.6.2是库src/引用的上游社区包,@react-native-oh/react-native-harmony@0.72.139为宿主运行时,不改变库自身依赖。检视记录
已按
review-local-commitsSKILL 模式 B 完成本地检视(报告:pre-commit-review.md):致命 0 | 严重 2(1 已修复 / 1 为 br_rnoh0.72 既有的README.OpenSource、COMMITTERS.md缺失)| 一般 3(已修复)| 建议 2(1 已修复)。Checklist