From e988c617a00cdd745a3fc8e50e384b1fb884da7c Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Sat, 25 Jul 2026 01:40:08 +0000 Subject: [PATCH] docs: correct beta setup instructions --- CHANGELOG.md | 1 + PROJECT_PLAN.md | 4 ++-- docs/ANDROID_BETA_BUILD.md | 8 +++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 87a8624..0a207a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ All notable Hermes Mobile source changes are recorded here. Entries are added du - Added `PROJECT_PLAN.md` as the project-controlled milestone plan. ### Changed +- Corrected the Android beta install guide so clean installs enter the mandatory Setup Wizard, document all three authentication modes, require a successful test before completion, and reserve Settings for post-setup editing/retesting. - Corrected the recorded Setup Wizard and beta packaging commit references and documented the source-current Task 5 verification attempt without adding device, release, installation, or credential claims. - Changed Settings to edit the same Setup Wizard profile, while valid existing configurations skip first-run setup and legacy/current profiles receive a one-time setup-version migration. - Changed gateway probing to support None, Bearer, and password-session cookie authentication without exposing raw credentials in connection forms, diagnostics, or logs. diff --git a/PROJECT_PLAN.md b/PROJECT_PLAN.md index e1adfc1..d957dbc 100644 --- a/PROJECT_PLAN.md +++ b/PROJECT_PLAN.md @@ -66,9 +66,9 @@ _Move finished items here with date, commit, and verification. Keep this section - Task 5 source-current re-verification on 2026-07-24: `/root/.openclaw/workspace/scripts/hermes-mobile-preflight.sh` passed; the documented offline `:app:testDebugUnitTest :app:assembleDebug` command passed (43 tasks, 1 executed); the generated Gradle XML report records 106 tests with 0 failures/errors, including 29 `SetupWizardReducerTest` cases; and `git diff --check` passed. A localhost gateway health probe returned HTTP 200, establishing reachability only. The debug APK reports package `cloud.molberg.hermesmobile`, version `0.1.0-beta.1` (`10001`), SHA-256 `45e4ab4783a74eb766070b0f670a2631a9ebdc044468bbe03087788f8106f150`. No ADB device/emulator or `/dev/kvm` was available; no device installation, real authentication, release, or end-to-end gateway verification is claimed. - Later Task 5 current-sandbox rerun on 2026-07-24: the exact `docs/ANDROID_BETA_BUILD.md` Gradle command was blocked before project execution with `Could not determine a usable wildcard IP`, and the recorded offline/no-daemon variant was blocked while opening Gradle's daemon TCP socket with `java.net.SocketException: Operation not permitted`. Direct JUnit execution of the existing source-current compiled `SetupWizardReducerTest` classes passed all 29 tests. The existing source-current XML reports remain 106 tests with 0 failures/errors, and the existing ignored APK was unchanged by both Gradle attempts; `aapt` and SHA-256 inspection reconfirmed the package/version/hash above. ADB 37.0.0 was available only by explicit path and could not start its daemon because smart-socket/netlink sockets are prohibited; `/dev/kvm` and `/dev/bus/usb` were absent. This adds fresh focused reducer execution only: no fresh Gradle compilation/test task, APK assembly, device installation, credential flow, release, or end-to-end verification is claimed. - Task 5 delivery verification on 2026-07-25: `/root/.openclaw/workspace/scripts/hermes-mobile-preflight.sh` passed; from `apps/mobile/android`, `GRADLE_USER_HOME=/root/hermes-mobile/.gradle-user ./gradlew --offline --no-daemon -Dorg.gradle.jvmargs= -Dorg.gradle.daemon=false -Pkotlin.compiler.execution.strategy=in-process :app:testDebugUnitTest :app:assembleDebug` passed (43 tasks, 1 executed); `git diff --check` passed. Current Gradle XML reports record 107 tests with 0 failures/errors/skips. The ignored debug APK reports package `cloud.molberg.hermesmobile`, version `0.1.0-beta.1` (`10001`), size 17,710,960 bytes, and SHA-256 `714e8e9cdd3f2eed93b285f233b1f4573d5d13fc2078bb717631f9b38f8428d4`. ADB reports no attached devices; no emulator/AVD or `/dev/kvm` is available. No device installation, release, or gateway end-to-end verification is claimed. -- [x] **R2a — Establish beta source packaging and install documentation** — 2026-07-24, commit `3b883bd` (`build: establish Android beta packaging`). +- [x] **R2a — Establish beta source packaging and install documentation** — 2026-07-24, commit `3b883bd` (`build: establish Android beta packaging`); guide corrected 2026-07-25. - Set Android package metadata to semantic `versionName` `0.1.0-beta.1` with monotonic `versionCode` `10001`, enabled generated metadata coverage, and named the debug APK `hermes-mobile-v0.1.0-beta.1-debug.apk`. - - Added a direct-gateway-only build, metadata inspection, clean-install, launch, configuration, evidence, and known-limitations guide; changed the npm Android build command to run the native Gradle project without Capacitor synchronization. + - Added a direct-gateway-only build, metadata inspection, clean-install, launch, configuration, evidence, and known-limitations guide; corrected it to document mandatory clean-install Setup Wizard entry, all three auth modes, successful-test completion gating, and post-setup Settings editing. Changed the npm Android build command to run the native Gradle project without Capacitor synchronization. - Source verification on 2026-07-24: required recovery preflight passed; `:app:testDebugUnitTest :app:assembleDebug` passed with the cached offline Gradle setup (43 tasks, 5 executed); and `git diff --check` passed. No APK was published, uploaded, or installed, so the remaining R2 device task and all final release criteria remain unclaimed. - [x] **B5 — Tool, artifact, and output experience** — 2026-07-24, commit `feat: add gated tool output experience`. - Added capability-gated decoding and reduction for the existing `tool.started`, `tool.progress`, `tool.completed`, and `tool.failed` direct gateway SSE events, with compact lifecycle/status cards for referenced and stream-only tools. diff --git a/docs/ANDROID_BETA_BUILD.md b/docs/ANDROID_BETA_BUILD.md index 0d0546d..86578a1 100644 --- a/docs/ANDROID_BETA_BUILD.md +++ b/docs/ANDROID_BETA_BUILD.md @@ -66,13 +66,15 @@ adb install app/build/outputs/apk/debug/hermes-mobile-v0.1.0-beta.1-debug.apk adb shell monkey -p cloud.molberg.hermesmobile -c android.intent.category.LAUNCHER 1 ``` -In Hermes Mobile Settings, configure the upstream gateway directly: +On first launch, complete the required Setup Wizard to configure the upstream gateway directly: 1. Enter the required Remote HTTPS gateway base URL and, optionally, a Local HTTPS URL for the same trusted gateway. -2. Select bearer authentication and enter the gateway token when required, or select no authentication only when the gateway is configured that way. -3. Save and test the connection. The client probes `/health`, validates compatibility through the authenticated gateway surface, and displays the active Local or Remote route. +2. Select no authentication, bearer authentication, or username/password authentication to match the gateway configuration, then enter the required credentials. +3. Test the connection. The client probes `/health`, validates compatibility through the authenticated gateway surface, and displays the active Local or Remote route; the wizard finishes only after a successful test. 4. Exercise chat/session behavior only where the gateway advertises the required capabilities. +After setup completes, Settings reopens the same connection profile for later edits and retesting. + Do not enter a legacy companion URL or companion access key. The beta path is the direct upstream Hermes gateway architecture described in `docs/DIRECT_GATEWAY_ARCHITECTURE.md`. ## Required install evidence