Commit Graph
33 Commits
Author SHA1 Message Date
Moler 94ee2d393d docs: add infrared hardware validation 2026-08-24 11:48:27 +08:00
Moler b27c67fbe4 test: verify ABSDK infrared contracts 2026-08-24 11:41:36 +08:00
Moler 4043d9f0a6 feat: add temporary infrared navigation 2026-08-24 11:37:13 +08:00
Moler 26ff049601 feat: route infrared debug hardware modes 2026-08-24 11:32:03 +08:00
Moler 3952f9f324 feat: add infrared control screen 2026-08-24 11:21:00 +08:00
Moler 0004a3bf86 feat: add infrared control state machine 2026-08-24 11:17:11 +08:00
Moler 0f17b21a59 feat: coordinate infrared runtime state 2026-08-24 11:11:14 +08:00
Moler be8d45eeba feat: persist infrared key bindings 2026-08-24 10:58:49 +08:00
Moler bdd3779899 fix: snapshot infrared fake calls 2026-08-24 02:44:05 +08:00
Moler c21ae4e0d9 test: add scriptable infrared fakes 2026-08-24 02:35:42 +08:00
Moler c9e9353a1b fix: preserve infrared failure context 2026-08-24 02:18:33 +08:00
Moler ea9f62632f feat: manage saved infrared keys 2026-08-24 02:05:30 +08:00
Moler c9fc1ba711 feat: orchestrate infrared key learning 2026-08-24 01:52:30 +08:00
Moler 435f0d37b4 fix: harden infrared key contracts 2026-08-24 01:26:00 +08:00
Moler 34c118394e feat: define infrared key contracts 2026-08-24 00:57:09 +08:00
Moler 849be2685f docs: plan infrared control implementation 2026-08-24 00:42:23 +08:00
Moler b9ed2cf010 docs: design infrared learning and sending 2026-08-24 00:42:23 +08:00
KremeCN 6f7d3248b0 feat: add ABSDK 0630 bridge (#3)
## Summary

- add a pure Kotlin/JVM anti-corruption layer for ABSDK 0630
- serialize blocking SDK calls and enforce one provider-scoped session
- map `ABRet`, raw maps, SDK exceptions, and error codes into typed domain results
- implement session, socket, temperature/humidity, and infrared gateways
- document bytecode-confirmed protocol facts, SDK limitations, and unresolved behavior
- align JVM module bytecode with the Android Java 17 target

## Scope boundaries

- the bridge is not wired into the Android app in this PR; debug continues using Fakes
- `setHostInfo` is intentionally not called or implemented as a provider flow
- logout clears only the bridge-local session because the JAR exposes no logout or token setter
- no real credentials, network calls, or hardware were used in tests
- `docs/requirement_spec.md` and `docs/project_plan.md` are unchanged

## Verification

```text
gradlew.bat --stop
gradlew.bat clean :absdk-bridge:test :domain:test :testing:fakes:test :android:app:lintDebug :android:app:assembleDebug :android:app:assembleRelease build
```

Result: `BUILD SUCCESSFUL`

The public JAR API was also rechecked with `javap`, including the actual `getThStatus(String)` method, absence of a public logout API, `ABRet.getDicDatas()`, `IrInfo.getStatus()`, and `downloadIrCodes(List<IrInfo>)`.
Reviewed-on: #3
Co-authored-by: KremeCN <3265494849@qq.com>
2026-08-23 07:19:05 +08:00
KremeCN 1e10d2ab00 Merge pull request 'feat: establish Android project foundation' (#2) from feat/project-foundation into main
Reviewed-on: #2
2026-08-22 22:41:16 +08:00
KremeCN e45de7fefe docs: define ABSDK device name identity 2026-08-22 22:29:25 +08:00
KremeCN ca0703a9a3 fix: make infrared downloads provider scoped 2026-08-22 22:21:34 +08:00
KremeCN cbc2dc7ec5 fix: redact passwords from credential strings 2026-08-22 22:14:47 +08:00
KremeCN 117f87f735 feat: establish Android project foundation 2026-08-22 22:06:50 +08:00
KremeCN e651f008e0 Merge pull request 'docs: add ABox Manager project plan' (#1) from docs/project-plan into main
Reviewed-on: #1
2026-08-22 20:57:43 +08:00
KremeCN 0b8c54bd21 docs: update package name to com.flagship.abox.manager 2026-08-22 17:12:49 +08:00
KremeCN 66334cf18e docs: add ABox Manager project plan 2026-08-22 16:04:45 +08:00
KremeCN 6f6f3755b5 docs: archive ABSDK Android sample 2026-08-22 15:48:16 +08:00
KremeCN 3c7c6002df docs: add LoginAsyncTaskDemo layout example 2026-08-22 14:19:11 +08:00
KremeCN 2954b56193 docs: document protected main branch workflow 2026-08-22 14:15:09 +08:00
KremeCN 519e865726 chore: add .gitignore 2026-08-22 14:03:57 +08:00
KremeCN 091103586a chore: add AGENTS.md rule hub with CLAUDE.md and .trae/rules/all.md entrypoints 2026-08-22 13:56:18 +08:00
KremeCN 4ba2508778 docs: add AsyncTask demo for ABSDK login 2026-08-22 12:13:24 +08:00
KremeCN 48f26e8ef8 chore: initial commit 2026-08-22 12:02:45 +08:00