feat: add transport domain contracts

This commit is contained in:
Hermes Agent
2026-07-24 10:23:21 +00:00
parent 464748c5bc
commit 983fb31801
12 changed files with 1391 additions and 42 deletions
+6 -6
View File
@@ -26,12 +26,6 @@ _Foundation milestones complete. Continue with B1._
## Beta path — upstream-connected MVP
- [ ] **B1 — Transport/domain contracts**
- Define transport DTOs and a repository interface for server profiles, authentication, sessions, messages, stream events, tool results, and artifacts.
- Map DTOs to stable UI models; fake repository powers previews/tests.
- Keep the existing companion as an optional adapter only; do not change upstream Hermes semantics.
- Verification: unit tests for mapping/state reducers; build/typecheck.
- [ ] **B2 — Connection and authentication UX**
- Server connection screen with validation, health, auth/session configuration, offline/unauthorized/retry states.
- Store sensitive values using Android-appropriate secure storage; never log secrets.
@@ -99,6 +93,12 @@ _Move finished items here with date, commit, and verification. Keep this section
- Added seeded empty, loading, reconnecting, and error states plus reducer tests for send, cancel, retry, and tool expansion.
- Verification: `git diff --check` passed; `GRADLE_USER_HOME=/root/hermes-mobile/.gradle-user ./gradlew :app:testDebugUnitTest :app:assembleDebug` from `apps/mobile/android` passed.
- [x] **B1 — Transport/domain contracts** — 2026-07-24, commit `feat: add transport domain contracts`.
- Added transport DTOs and domain repository contracts for server profiles, authentication, sessions, messages, stream events, tool results, and artifacts.
- Added DTO-to-domain/UI mappers, stream reducer behavior, and a fake Hermes repository for previews and unit tests.
- Kept the companion path as an optional adapter capability without changing upstream Hermes semantics.
- Verification: parent preflight immediately before B1 completion passed: script PASS; Android `:app:assembleDebug` BUILD SUCCESSFUL, 35 tasks total and 6 executed. Parent also verified `git diff --check` passed.
## Work-loop checklist
Before coding: