70 Commits

Author SHA1 Message Date
RuiChen_01 3bbbfedc6e perf(build): enable size_optimize_config on 130 SO targets
Add a new services/common:size_optimize_config (same flags as
optimize_config minus the explicit -flto=full, so the toolchain's
global ThinLTO mode is preserved) and apply it to the 130
ohos_shared_library targets that previously shipped without any
optimization config, so unreferenced functions/data are dropped at
link time and ROM shrinks without overriding the global LTO policy.

-Wl,--gc-sections is an ELF-only linker flag: Apple ld rejects it, so
both optimize_config and size_optimize_config now add it only when
current_os != "mac", keeping the darwin SDK host build (which links
dylibs with -dead_strip) working.

Co-Authored-By: Agent
Signed-off-by: RuiChen_01 <chenrui193@huawei.com>

AI[100%] Human Fixed[0%] Human[0%] AI Adopted[100%]
Co-authored-by: claude (glm-5.3) <ai@local>
2026-08-21 17:24:00 +08:00
openharmony_ci 3234c1a91a !20051 merge 84runtime into master
add isDebugApp

Created-by: wlh2624_DS
Commit-by: wlh2624_DS
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/12418
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由

### AI检视评分(使用本地代码检视skills扫描):



See merge request: openharmony/ability_ability_runtime!20051
2026-08-07 19:45:35 +08:00
liuzongze@h-partners.com be6a34dda8 前台组件BTI适配
Co-Authored-By: Liuzongze
Signed-off-by: liuzongze@h-partners.com <liuzongze@h-partners.com>

🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%]

Change-Id: I679d5a5acdc3173856c6a91f21839a50bd7ca899
2026-08-05 14:46:08 +08:00
wlh2624_DS 8b4c333935 add isDebugApp
Co-Authored-By: agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-08-04 09:29:57 +08:00
openharmony_ci 530b08580b !19669 merge new_oom into master
add processName for oom notification

Created-by: chenwendi4
Commit-by: chenwendi4
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11907

**Description**:
add processName for oom notification

Change-Id: Ia3819bb0beb877c264af6f1981c13f73849caf60

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19669
2026-07-06 18:29:04 +08:00
SKY2001 b0636e6c24 修改public_external_dep
Signed-off-by: SKY2001 <songtianyu10@huawei.com>
Co-Authored-By: sky
2026-07-04 10:42:38 +08:00
chenwendi4 3b5e1c2e9e add processName for oom notification
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11907

Co-Authored-By: Agent

Signed-off-by: chenwendi4 <chenwendi4@huawei.com>
2026-07-03 10:41:15 +08:00
duansizhao 5250f45302 代码优化
Signed-off-by: duansizhao <duansizhao@huawei.com>
Change-Id: I7450ddca3f3577cf9d24ac10e2640cd523e4d664
2026-06-26 18:01:54 +08:00
openharmony_ci 6e9b447895 !19466 merge fix_dfx into master
Fix oom dfx

Created-by: majie777
Commit-by: majie777
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11550
**Description**:
Fix oom dfx
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19466
2026-06-16 13:33:47 +08:00
openharmony_ci 9cff4000c7 !19422 merge aot_modify_hsp_sign into master
AOT: modify ets runtime to load host-orivate HSP AOT

Created-by: wanzixuan330
Commit-by: wanzixuan330
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
**Description**:
应用间HSP的安装时AOT修改为跟随宿主HAP的AOT,ets runtime的post fork阶段查找HSP的落盘an路径发生改变
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   pass       |
| 成员变量进行赋值或创建需要排查并发                               |  pass        |
| 谨慎在lambda表达式中使用引用捕获                                |    pass      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |     pass     |
| map\vector\list\set等stl模板类使用时需要排查并发                |    pass      |
| 谨慎考虑加锁范围                                               |   pass       |
| 在IPC通信中谨慎使用同步通信方式                                 |     pass     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    pass      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    pass      |
| 禁止多个独立创建的智能指针管理同一地址                           |     pass
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |   pass       |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     pass     |
| 禁止接口返回局部变量引用                                        |   pass       |
| 禁止在信号函数中加锁                                            |    pass      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    pass      |
| 禁止将同一个cpp编译在不同的so中                                 |    pass      |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |    pass      |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    pass      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |   pass       |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    pass      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   pass       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |   pass       |
| readParcelable获取的对象使用前需要判空                            |     pass     |
| 分配和释放内存的函数需要成对出现                                   |   pass      |
| 申请内存后异常退出前需要及时进行内存释放                            |      pass    |
| 内存申请前必须对内存大小进行合法性校验                              |     pass     |
| 内存分配后必须判断是否成功                                         |     pass     |
| 禁止使用realloc、alloca函数                                       |   pass       |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |   pass       |
| 禁止打印内存地址                                                  |    pass      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |   pass       |
| 禁止对有符号整数进行位操作符运算                                    |   pass       |
| 禁止对指针进行逻辑或位运算                                         |   pass       |
| 循环次数如果收外部数据控制,需要检验其合法性                         |   pass       |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    pass      |
| 谨慎使用不可重入函数                                               |     pass     |
| 必须检查安全函数的返回值,并进行正确处理                             |    pass      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |    pass      |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19422
2026-06-02 20:46:17 +08:00
wanzixuan330 a95306e217 AOT: modify ets runtime to load host-orivate HSP AOT
Issue: https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
Co-Authored-By: Agent
Signed-off-by: wanzixuan330 <wanzixuan@huawei.com>
2026-06-02 11:46:43 +08:00
majie777 a986775f11 Fix oom dfx
fix oom dfx
Issue:https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11550

Co-Authored-By:Agent

Signed-off-by: majie777 <majie77@h-partners.com>
2026-05-27 16:46:13 +08:00
zhongshield1 43729a0bf2 change external_deps to deps
Co-Authored-By: manual
Signed-off-by: zhongshield1 <zhangzezhong8@huawei-partners.com>
2026-05-26 14:43:06 +08:00
openharmony_ci 130a7a2797 !19338 merge 514runtime into master
support static plugin hsp

Created-by: wlh2624_DS
Commit-by: wlh2624_DS
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11354
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由

### Change-Id
Change-Id: Iba3a280edb75482cfe005b3fbb375258dc87859d


See merge request: openharmony/ability_ability_runtime!19338
2026-05-19 17:43:58 +08:00
wlh2624_DS e6302bb350 support static plugin hsp
Co-Authored-By: Agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-05-17 18:16:19 +08:00
LeechyLiang 03f13b74fa Fix: incorrect usage of ANI
Issue:https://gitcode.com/openharmony/ability_ability_runtime/issues/15256
Change-Id: I5a22c9786917274fbbf655ceabf19399d2778a81
Signed-off-by: LeechyLiang <liangweihong1@huawei.com>
Co-Authored-By: Agent
2026-05-15 09:50:53 +08:00
Luobniz21 6ce94c7b2d cfi_0323
Co-Authored-By:Agent
Signed-off-by: Luobniz21 <luoyicong@h-partners.com>
Change-Id: Id04d2fede8db6afb669481142413bb43e5b562c7
2026-03-24 09:23:06 +08:00
openharmony_ci ee781260bc !18546 merge master into master
Uncaught exception logs written to disk

Created-by: rentangyu
Commit-by: rentangyu
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9463
**Description**:
Uncaught exception logs written to disk
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18546
2026-03-13 17:34:02 +08:00
openharmony_ci f3025e72b8 !18527 merge master into master
aa start -p add baseLineProfile argument

Created-by: liuzongze
Commit-by: liuzongze
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/14628
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |    不涉及      |
| 成员变量进行赋值或创建需要排查并发                               |      不涉及    |
| 谨慎在lambda表达式中使用引用捕获                                |    不涉及      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |   不涉及       |
| map\vector\list\set等stl模板类使用时需要排查并发                |     不涉及     |
| 谨慎考虑加锁范围                                               |    不涉及      |
| 在IPC通信中谨慎使用同步通信方式                                 |    不涉及      |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |       不涉及   |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |   不涉及       |
| 禁止多个独立创建的智能指针管理同一地址                           |     不涉及     |
| 禁止在析构函数中抛异步任务                                      |      不涉及    |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |        不涉及  |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |   不涉及       |
| 禁止接口返回局部变量引用                                        |      不涉及    |
| 禁止在信号函数中加锁                                            |     不涉及     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |      不涉及    |
| 禁止将同一个cpp编译在不同的so中                                 |     不涉及     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |   不涉及       |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |      不涉及    |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    不涉及      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     不涉及     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     不涉及     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     不涉及     |
| readParcelable获取的对象使用前需要判空                            |      不涉及    |
| 分配和释放内存的函数需要成对出现                                   |    不涉及      |
| 申请内存后异常退出前需要及时进行内存释放                            |   不涉及       |
| 内存申请前必须对内存大小进行合法性校验                              |   不涉及       |
| 内存分配后必须判断是否成功                                         |    不涉及      |
| 禁止使用realloc、alloca函数                                       |     不涉及     |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    不涉及      |
| 禁止打印内存地址                                                  |    不涉及      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     不涉及     |
| 禁止对有符号整数进行位操作符运算                                    |    不涉及      |
| 禁止对指针进行逻辑或位运算                                         |   不涉及       |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    不涉及      |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    不涉及      |
| 谨慎使用不可重入函数                                               |       不涉及   |
| 必须检查安全函数的返回值,并进行正确处理                             |     不涉及     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     不涉及     |

**TDD Result**:

**XTS Result**:


### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18527
2026-03-07 21:04:31 +08:00
liuzongze d5fa970a9b aa start -p add baseLineProfile argument
Signed-off-by: liuzongze <liuzongze@h-partners.com>
Change-Id: Ie4ed13695e50aa1a4b202f49405039317f3ce8d2
Co-Authored-By: Agent
2026-03-07 20:07:50 +08:00
yuanyao14 34e9fc36f6 ArkTS-Sta AOT loading checking aotCompileStatus
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14663

Signed-off-by: yuanyao14 <yuanyao14@huawei.com>
2026-03-07 16:41:12 +08:00
rentangyu 1a2d738f60 Uncaught exception logs written to disk
Issue:https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9463?ref=&did=3744723#tid-3744723

Signed-off-by: rentangyu <rentangyu@huawei.com>
2026-03-04 15:40:58 +08:00
zhangrunze 3e3db9c0b4 Register AOT profile output paths for multi-module PGO
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9599
Signed-off-by: zhangrunze <zhangrunze13@huawei.com>
2026-03-03 17:17:52 +08:00
yuanyao14 c5e359287b Support ArkTS-Sta AOT hsp loading
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14435

Signed-off-by: yuanyao14 <yuanyao14@huawei.com>
2026-02-25 15:30:01 +08:00
groshevmaksim e88616694f Remove refundand option
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14507
Tests: ninja all tests
Signed-off-by: groshevmaksim <groshev.maksim@h-partners.com>
Change-Id: I822b03e9f2e63c539129aff8b62304172e9b4224
2026-02-10 16:39:06 +03:00
openharmony_ci e83bb69781 !17312 merge aot-verification-in-apps into master
aot verification of apps

Created-by: groshevmaksim
Commit-by: groshevmaksim
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/13361

**Description**:
need
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17312
2026-02-09 22:20:09 +08:00
wuyuanchao4 3c4bbfde4d From: Anna Antipina <antipina.anna1@huawei.com>
Date: Thu, 11 Sep 2025 19:13:36 +0300
Subject: [PATCH] Disable default ahead-of-time verification for apps

Issue: https://gitee.com/openharmony/arkcompiler_runtime_core/issues/ICWPZW
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14401

Disable default ahead-of-time verification for apps due to valid verification error about calling method from external class MyCallback

Signed-off-by: Anna Antipina <antipina.anna1@huawei.com>

Signed-off-by: wuyuanchao4 <wuyuanchao4@huawei.com>
2026-02-02 16:16:48 +08:00
Duansizhao 2f9444faf3 规范tdd用例输出路径
Signed-off-by: Duansizhao <duansizhao@huawei.com>
2026-01-27 15:06:01 +08:00
openharmony_ci b813c42f5a !18030 merge coroutineScheduleModify into master
External scheduler integration

Created-by: qq_45775036
Commit-by: zhangyu
Merged-by: openharmony_ci
Description: **IssueNo**:

https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9240

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     pass     |
| 成员变量进行赋值或创建需要排查并发                               |    pass      |
| 谨慎在lambda表达式中使用引用捕获                                |     pass     |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |     pass     |
| map\vector\list\set等stl模板类使用时需要排查并发                |    pass      |
| 谨慎考虑加锁范围                                               |    pass      |
| 在IPC通信中谨慎使用同步通信方式                                 |     pass     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |     pass     |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    pass      |
| 禁止多个独立创建的智能指针管理同一地址                           |     pass     |
| 禁止在析构函数中抛异步任务                                      |     pass     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |    pass      |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     pass     |
| 禁止接口返回局部变量引用                                        |     pass     |
| 禁止在信号函数中加锁                                            |     pass     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |      pass    |
| 禁止将同一个cpp编译在不同的so中                                 |     pass     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     pass     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    pass      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |     pass     |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    pass      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   pass       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     pass     |
| readParcelable获取的对象使用前需要判空                            |    pass      |
| 分配和释放内存的函数需要成对出现                                   |     pass     |
| 申请内存后异常退出前需要及时进行内存释放                            |    pass      |
| 内存申请前必须对内存大小进行合法性校验                              |     pass     |
| 内存分配后必须判断是否成功                                         |    pass      |
| 禁止使用realloc、alloca函数                                       |     pass     |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     pass     |
| 禁止打印内存地址                                                  |     pass     |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     pass     |
| 禁止对有符号整数进行位操作符运算                                    |     pass     |
| 禁止对指针进行逻辑或位运算                                         |    pass      |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     pass     |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     pass     |
| 谨慎使用不可重入函数                                               |    pass      |
| 必须检查安全函数的返回值,并进行正确处理                             |    pass      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     pass     |

**TDD Result**:

pass

**XTS Result**:

pass

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18030
2026-01-17 02:29:10 +08:00
zhangyu 26b340c748 External scheduler integration
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9240

Signed-off-by: zhangyu <zhangyu990@huawei.com>
2026-01-16 10:41:37 +08:00
groshevmaksim fecf5ed7a5 aot verification
Signed-off-by: groshevmaksim <groshev.maksim@h-partners.com>
Change-Id: I95da82adaa4a9adb72cecdf478d6eb7051cab009
2026-01-13 14:15:40 +03:00
zengmanyi 908eda114c delete test of FindClass
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14105

Signed-off-by: zengmanyi <zengmanyi@huawei.com>
2026-01-08 15:52:21 +08:00
openharmony_ci a8c3118973 !17833 merge tdd_1224 into master
add tdd

Created-by: zhongshield1
Commit-by: zhangzezhong
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |  pass |
| 成员变量进行赋值或创建需要排查并发                               |  pass |
| 谨慎在lambda表达式中使用引用捕获                                |  pass |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  pass |
| map\vector\list\set等stl模板类使用时需要排查并发                |  pass |
| 谨慎考虑加锁范围                                               |  pass |
| 在IPC通信中谨慎使用同步通信方式                                 |  pass |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |  pass |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |  pass |
| 禁止多个独立创建的智能指针管理同一地址                           |  pass |
| 禁止在析构函数中抛异步任务                                      |  pass |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |  pass |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |  pass |
| 禁止接口返回局部变量引用                                        |  pass |
| 禁止在信号函数中加锁                                            |  pass |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |  pass |
| 禁止将同一个cpp编译在不同的so中                                 |  pass |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |  pass |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |  pass |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |  pass |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |  pass |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |  pass |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |  pass |
| readParcelable获取的对象使用前需要判空                            |  pass |
| 分配和释放内存的函数需要成对出现                                   |  pass |
| 申请内存后异常退出前需要及时进行内存释放                            |  pass |
| 内存申请前必须对内存大小进行合法性校验                              |  pass |
| 内存分配后必须判断是否成功                                         |  pass |
| 禁止使用realloc、alloca函数                                       |  pass |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |  pass |
| 禁止打印内存地址                                                  |  pass |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |  pass |
| 禁止对有符号整数进行位操作符运算                                    |  pass |
| 禁止对指针进行逻辑或位运算                                         |  pass |
| 循环次数如果收外部数据控制,需要检验其合法性                         |  pass |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |  pass |
| 谨慎使用不可重入函数                                               |  pass |
| 必须检查安全函数的返回值,并进行正确处理                             |  pass |
| 禁止仅通过TokenType类型判断绕过权限校验                             |  pass |

**TDD Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/083335df-f008-4677-9bba-4eaa53a6fe36/image.png 'image.png')
**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17833
2025-12-25 16:23:21 +08:00
zhangzezhong 6c72d941e9 add tdd
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-25 12:25:44 +08:00
openharmony_ci bd42904511 !17830 merge ets_interop_context_prefork into master
add js env

Created-by: slynkodenis
Commit-by: zhangzezhong
Merged-by: openharmony_ci
Description: **IssueNo**:

https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8883

**Description**:

Cherry-pick of https://gitcode.com/openharmony/ability_ability_runtime/pull/17620

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17830
2025-12-24 22:38:23 +08:00
zhangzezhong 67309195ad add js env
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8883

Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-24 10:18:16 +03:00
openharmony_ci 29dce6bc8b !17807 merge fix_master into master
fix part_compile

Created-by: wuyuanchao4
Commit-by: wuyuanchao4
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/13960
**Description**:
修复独立编译报错
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              | pass |
| 成员变量进行赋值或创建需要排查并发                               | pass |
| 谨慎在lambda表达式中使用引用捕获                                | pass |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               | pass |
| map\vector\list\set等stl模板类使用时需要排查并发                | pass |
| 谨慎考虑加锁范围                                               | pass |
| 在IPC通信中谨慎使用同步通信方式                                 | pass |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        | pass |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      | pass |
| 禁止多个独立创建的智能指针管理同一地址                           | pass |
| 禁止在析构函数中抛异步任务                                      | pass |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             | pass |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    | pass |
| 禁止接口返回局部变量引用                                        | pass |
| 禁止在信号函数中加锁                                            | pass |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           | pass |
| 禁止将同一个cpp编译在不同的so中                                 | pass |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 | pass |
| json对象在取值之前必须先判断类型,避免类型不匹配                   | pass |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              | pass |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            | pass |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 | pass |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  | pass |
| readParcelable获取的对象使用前需要判空                            | pass |
| 分配和释放内存的函数需要成对出现                                   | pass |
| 申请内存后异常退出前需要及时进行内存释放                            | pass |
| 内存申请前必须对内存大小进行合法性校验                              | pass |
| 内存分配后必须判断是否成功                                         | pass |
| 禁止使用realloc、alloca函数                                       | pass |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          | pass |
| 禁止打印内存地址                                                  | pass |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               | pass |
| 禁止对有符号整数进行位操作符运算                                    | pass |
| 禁止对指针进行逻辑或位运算                                         | pass |
| 循环次数如果收外部数据控制,需要检验其合法性                         | pass |
| 禁止使用内存操作类危险函数,需要使用安全函数                         | pass |
| 谨慎使用不可重入函数                                               | pass |
| 必须检查安全函数的返回值,并进行正确处理                             | pass |
| 禁止仅通过TokenType类型判断绕过权限校验                             | pass |

**TDD Result**:
pass
**XTS Result**:
pass
### 是否已执行L0用例
- [x]  已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17807
2025-12-23 22:34:42 +08:00
zhangzezhong 0a52b91f08 fix linker
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-23 15:53:09 +08:00
wuyuanchao4 3d72f1c4bd fix part_compile
Signed-off-by: wuyuanchao4 <wuyuanchao4@huawei.com>
2025-12-22 16:57:31 +08:00
zhangzezhong 13434e850f modify linker
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-22 14:10:20 +08:00
wuyuanchao4 25e07a488e maxi delete ani signarure
Signed-off-by: wuyuanchao4 <wuyuanchao4@huawei.com>
2025-12-18 12:23:00 +08:00
wuyuanchao4 53ff6f51bc fix coroutine
Signed-off-by: wuyuanchao4 <wuyuanchao4@huawei.com>
2025-12-18 11:12:22 +08:00
wuyuanchao 6f31c83c21 Sync0702ToMaster-ANIMangling
Signed-off-by: wuyuanchao <wuyuanchao4@huawei.com>
2025-12-13 20:22:12 +08:00
wuyuanchao4 703c0d10e4 fix builtin namespace, sync 0702 to master
Issue:https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8690

Signed-off-by: wuyuanchao4 <wuyuanchao4@huawei.com>
2025-12-11 22:39:54 +08:00
jichunjiang-30079441 4b84070a51 remove Deprecated Array APIs
Signed-off-by: jichunjiang-30079441 <jichunjiang1@h-partners.com>
2025-12-10 14:48:23 +08:00
openharmony_ci 7d517a2217 !17165 merge master into master
arkcompiler independent compilation fix

Created-by: da_wei_li11
Commit-by: da_wei_li11
Merged-by: openharmony_ci
Description: **IssueNo**:
Issue:https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/7700
**Description**:
arkcompiler independent compilation fix
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17165
2025-11-12 17:57:19 +08:00
openharmony_ci 8cd8066710 !17240 merge coroutines-sync-branches into master
sync coroutines code in master branch

Created-by: panferovi
Commit-by: Panferov Ivan
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8105

**Description**:
sync coroutines code in master branch

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17240
2025-11-07 21:44:48 +08:00
da_wei_li11 f261210518 arkcompiler independent compilation fix
Issue:https://gitcode.com/openharmony/ability_ability_runtime/issues/13420

Signed-off-by: da_wei_li11 <lidawei30@huawei.com>
2025-10-31 14:09:02 +08:00
wlh2624_DS 1a77f432d8 1.2 system hsp fix
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2025-10-31 09:37:32 +08:00
Panferov Ivan 9bb1b2b4b5 sync coroutines code in master branch
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8105

Signed-off-by: Panferov Ivan <panferov.ivan@huawei-partners.com>
2025-10-30 11:06:24 +08:00