aboutsummaryrefslogtreecommitdiff
path: root/docs/FEASIBILITY.md
diff options
context:
space:
mode:
authorcirakg <cirakg@cirakg.xyz>2026-10-21 03:55:15 +0200
committercirakg <cirakg@cirakg.xyz>2026-10-21 03:55:15 +0200
commitf439beec17419ccbe0dc7643cc039079f15e04a0 (patch)
tree02863a95ba3d8af263a68586370319e5559b00a8 /docs/FEASIBILITY.md
parent56e0c351bb95cfdf63aa76ab8c5d725a694bad63 (diff)
docs: user guide, known limitations and M8 results; bump to 0.8.0v0.8.0
0.8.0 is the release candidate: 1.0.0 is tagged after the on-watch checklist (docs/TESTING.md). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'docs/FEASIBILITY.md')
-rw-r--r--docs/FEASIBILITY.md9
1 files changed, 9 insertions, 0 deletions
diff --git a/docs/FEASIBILITY.md b/docs/FEASIBILITY.md
index 08e9461..920a65c 100644
--- a/docs/FEASIBILITY.md
+++ b/docs/FEASIBILITY.md
@@ -279,6 +279,15 @@ With SDK 9.2.0 and the device files of all 72 products installed:
- **Settings schema.** The SDK's `bin/resources.xsd` allows property types `string`, `number`, `long`, `float`, `double`, `boolean` and `array`, and setting types `list`, `boolean`, `numeric`, `alphaNumeric`, `phone`, `email`, `url`, `date`, `password` and `array`, with `readonly`, `min`, `max`, `maxLength` and `errorMessage`. The form uses `long` for HOTP counters and `readonly` for the Result and About fields. Every resource file validates against it (`make lint`).
- **Still open (3d, 3e):** how the phone shows values the watch writes back (Result fields, cleared forms, the About catalog), and how long a text field may be. The catalog is capped at 800 characters, the Garmin Express limit reported in 3d. Your M1 spike and the M7 beta check answer these.
+## Verified during M8 (2026-10-21)
+
+- **Watchdog limits come from the device files** (`simulator.json`, `watchdogCount`): 120,000 bytecodes per event on the Forerunner 255 and 255S, the only 512 KB targets, and 240,000 on the other 70. The job runner relies on that pairing, and `make products` checks it.
+- **Counted bytecodes are far more than the source suggests**: simple loop iterations cost 50 to 70. The M6 step sizes had only been exercised with small codes. With large ones, every 2D encoder could trip the watchdog. `make watchdog` now proves each step stays below half the limit.
+- **Glances can load the crypto they need**: the opt-in favourite code (AES, HMAC, HKDF, SHA-512, TOTP) runs in the glance at about 37 % of its 64 KB. In the simulator the glance's 1 s timer runs and the glance redraws while it is shown; how often a real watch redraws a visible glance is on the real-watch checklist.
+- **Buffered bitmaps** with a two-colour palette (API 4.0+) work in the simulator on the Forerunner 255S, 70 and 965 and the Venu X1 (`make watchdog` decodes one), so very large codes are painted in steps and drawn as one bitmap.
+- **The simulator doesn't return to the glance** when an app exits; a new launch starts in the glance.
+- **Code and constant data load whole at start**: about 156 KB of the Forerunner 255S's 512 KB, the same in release and debug builds.
+
## Decisions
Answered on 2026-10-18: