Release runtime dependency inspection also confirmed that testing:fakes is not included in the release APK.
## Summary
- add a buildable Kotlin and Compose Android project foundation
- define provider-scoped domain contracts and deterministic development fakes
- add the Material 3 design system, Hilt composition root, and navigation shell
- document module boundaries while leaving uncertain ABSDK behavior unresolved
## Verification
```text
gradlew.bat --stop
gradlew.bat clean :domain:test :testing:fakes:test :android:app:lintDebug :android:app:assembleDebug :android:app:assembleRelease
```
Result: `BUILD SUCCESSFUL`
Release runtime dependency inspection also confirmed that `testing:fakes` is not included in the release APK.
Here are some key observations to aid the review process:
⏱️Estimated effort to review: 4 🔵🔵🔵🔵⚪
🧪PR contains tests
🔒No security concerns identified
⚡No major issues detected
## PR Reviewer Guide 🔍
#### (Review updated until commit https://git.kimico.de/Flagship/abox-mgr/commit/e45de7fefe35f9e09214b3a31881003724db2e3b)
Here are some key observations to aid the review process:
<table>
<tr><td>⏱️ <strong>Estimated effort to review</strong>: 4 🔵🔵🔵🔵⚪</td></tr>
<tr><td>🧪 <strong>PR contains tests</strong></td></tr>
<tr><td>🔒 <strong>No security concerns identified</strong></td></tr>
<tr><td>⚡ <strong>No major issues detected</strong></td></tr>
</table>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Verification
Result:
BUILD SUCCESSFULRelease runtime dependency inspection also confirmed that
testing:fakesis not included in the release APK.PR Reviewer Guide 🔍
(Review updated until commit
e45de7fefe)Here are some key observations to aid the review process:
Persistent review updated to latest commit
cbc2dc7ec5已处理该安全意见:
Password.toString()现在固定返回脱敏文本,不会输出底层明文值;Password与LoginCredentials的字符串表示都不包含真实密码;BUILD SUCCESSFUL。修复提交:
cbc2dc7 fix: redact passwords from credential strings已处理提供方混用意见:
InfraredCode移除重复的profileId;downloadCodes(profileId, codes)的参数现在是唯一提供方作用域,不再允许构造互相矛盾的标识;profileId和码列表的InfraredDownloadCall,测试同步覆盖作用域信息;BUILD SUCCESSFUL。修复提交:
ca0703a fix: make infrared downloads provider scopedPersistent review updated to latest commit
ca0703a9a3Persistent review updated to latest commit
e45de7fefe已处理设备误操作意见,并保留与 ABSDK 0630 的真实接口边界:
DeviceId明确作为 App 本地设备目录的稳定记录标识;DeviceName,避免错误假定 SDK 能接受本地 ID;ProviderProfileId与DeviceType内,DeviceName必须唯一;设备目录在添加、编辑和导入时负责强制该约束;BUILD SUCCESSFUL。更新提交:
e45de7f docs: define ABSDK device name identity该条最新意见无需代码修改:其描述与当前代码及其附带代码片段矛盾。
当前
InfraredGateway.downloadCodes已明确接收profileId: ProviderProfileId:Fake 实现也通过
InfraredDownloadCall(profileId, codes)保留并测试提供方作用域。因此下载操作能够确定使用哪个提供方会话,不存在意见所述的“未接收 ProviderProfileId”。为避免制造无意义提交,本条不再改动代码。/review
Persistent review updated to latest commit
e45de7fefe