Repository navigation
Releases: lazelife420-spec/ForgeCast
Release list
ForgeCast Weather v0.3.5
ForgeCast Weather v0.3.5
Decision-first weather that can answer you.
v0.3.5 is a feature release: ForgeCast now answers your weather decisions directly, gives clothing advice that understands timing and conditions, and stays useful on your home screen.
Ask ForgeCast
A new deterministic weather-decision interface. Ask things like:
- When should I walk tonight?
- Do I need a jacket at 8?
- When will it rain?
- Is tomorrow better than today?
- What should I bring?
Ask ForgeCast runs on ForgeCast's own forecast and decision engines — no cloud chatbot, no hidden question telemetry. Every answer shows its evidence (current conditions, rain risk, timing) and why the call was made.
Smarter Wear / Bring guidance
Clothing advice now considers conditions and timing instead of mechanically mapping temperature to clothing:
18°C and mild: T-shirt should be fine.
Cooling later: Bring a hoodie if you'll still be out after sunset.
Advice names specific pieces and tells you when to carry what — with the forecast numbers behind it.
Dynamic widgets
Home-screen widgets now show forecast-aware decision states:
- Best Window for going outside
- Wear / Bring guidance
- Rain and cooling changes ahead
- An honest stale-data state instead of silently old numbers
Widgets update with your weather — they are not continuously animated.
Samsung OneUI reliability
Improved widget restoration and reliability on Samsung OneUI, including cached native restore after reboot or background freezing.
Ask discovery + accessibility
A compact Ask strip above your daily plan, forecast-aware quick prompts, screen-reader announcements for answers, follow-up suggestions, and a steadier keyboard flow.
Upgrading
- From v0.3.4: install normally — same signer, settings and data carry over (verified on device).
- From v0.3.3 or earlier: the signing key changed in v0.3.4; uninstall/reinstall is required. v0.3.5 does not restore in-place compatibility with those old builds.
Package: com.prooffoundry.skyfoundry · Version: 0.3.5 (versionCode 16)
APK SHA-256: A28DB27CD16B3E45F3E75CC0D7C7A4B101646573DE9954EC40DBF03E5439BEA1
ForgeCast Weather v0.3.4
ForgeCast Weather v0.3.4
Release date: 2026-09-01 · Platform: Android · Package: com.prooffoundry.skyfoundry · Version: 0.3.4 (versionCode 15)
REQUIRED: Uninstall before upgrading from v0.3.3 or earlier
ForgeCast v0.3.4 uses a new private Android signing identity.
ForgeCast APKs through v0.3.3 used the historical debug-era signing key and cannot be upgraded in place to v0.3.4.
Users upgrading from those versions must uninstall the old ForgeCast application before installing v0.3.4.
Because ForgeCast is local-first, uninstalling the old application removes app-local settings and other locally stored application data unless separately preserved.
This is not a prediction. It was verified by an actual migration test on 2026-09-01: the frozen public v0.3.3 build rejects the in-place update with INSTALL_FAILED_UPDATE_INCOMPATIBLE (signatures do not match); uninstalling removes the app and its app-local data; the clean v0.3.4 install then succeeds with the new signing identity.
Verify your download
SHA-256: bd065c48c5519f3658c955abbbdad987f3840b4a774d9f3786315a79a92b1354
Windows: Get-FileHash ".\ForgeCast-Weather-v0.3.4-android-release.apk" -Algorithm SHA256
The same bytes are served from Proof Foundry distribution:
- APK: https://downloads.theprooffoundry.com/forgecast/v0.3.4/ForgeCast-Weather-v0.3.4-android-release.apk
- SHA-256: https://downloads.theprooffoundry.com/forgecast/v0.3.4/ForgeCast-Weather-v0.3.4-android-release.apk.sha256.txt
What's new in v0.3.4
- Idle render-loop governor — ambient animations (rain/snow particles, clouds, sun glow, phase pulses) now settle after a few seconds instead of redrawing forever. Idle foreground measured at 1 frame / 12 s on a Samsung Galaxy S23 (previously ~121 fps continuous), which also restores accessibility tooling that depends on UI idle.
- Day-aware plan copy — future rain risk now says "Rain risk rises tomorrow after 5 p.m" instead of ambiguous past-midnight phrasing.
- Location ownership (LAST EXPLICIT USER CHOICE WINS) — a manually selected city beats late/stale GPS across cold starts; an explicit Detect Location re-authorizes GPS. Verified on device in both directions.
- Stability — all five tabs stable, large-text (1.3×) layout verified, zero fatal exceptions in device QA.
Proof
- Source commit
28e1e0ec7ecf263a62293e8a2bb15fe0c49e699b(tree55a47a126b0293111026f283be6a83ef547dd02a), taggedv0.3.4; release candidatev0.3.4-rc1published the exact same bytes — no rebuild, no re-sign. - Tests: 883/883 across 82 suites · smoke 17/17 · lint 0 errors / 22 warnings.
- Reality Gate signed proofs: source
ffb74bcb…GREEN · candidate artifact47c37c8c…GREEN · clean-break migrationfd8ad3d8…GREEN. - Device QA: Samsung Galaxy S23 (SM-S911W) plus a disposable emulator lane for the destructive migration test.
Notes
- The APK is signed with the new private ForgeCast signing identity (certificate SHA-256
240fa29e5f49369bce4cb092b2bf548c69d5a374dd80709f723872264bd88da7). Android will show it as an unknown-source sideload; verify the checksum first. - No background telemetry; local-first.
- A checksum proves the bytes, not publisher trust — it is not a code signature.
ForgeCast Weather v0.3.3
ForgeCast Weather v0.3.3 — Release Notes
Release: v0.3.3 — DayForge UX Consolidation
Date: 2026-07-11
Platform: Android
Minimum SDK: as per v0.3.2 baseline
What's new
DayForge UX consolidation
Each tab now has one job instead of overlapping into a mini-homepage: Today is the immediate decision, Plan is the detailed daily timeline, Forecast leads with upcoming-day decisions, Widgets is setup-only, Settings is controls plus custody information.
Decision-first Today experience
The primary decision card (what to wear, best outside time, bring/skip) sits above the feed and motion bar, so the most important answer is visible without scrolling.
Three-preset widget setup
The widget picker is reduced to 3 curated styles (Weather Now, Daily Planner, Compact Temp), with a legacy stored preset migrating automatically instead of silently breaking.
Improved outfit confidence and cold/wet guidance
A new "Best outfit · NN% sure" confidence indicator scores how certain the app is, based on proximity to temperature-tier boundaries, rain ambiguity, borderline wind, and road risk. Cold-and-wet days now get rain protection and warmth, instead of rain-only advice that ignored the cold.
Fixed tomorrow leakage and stale-time guidance
"Best outside" no longer leaks tomorrow's raw clock time onto today's card. Night-time copy no longer shows stale afternoon guidance (e.g. Warmer after 2 p.m. at 9 p.m.) — the motion bar and next-shift copy correctly reflect time-appropriate evening and night states.
Fixed contradictory Bring/Skip recommendations
An item could previously appear in both the Bring and Skip lists at once — e.g. "Bring: Rain shell, Umbrella" and "Skip: Heavy coat, Winter gear, Umbrella" simultaneously, when immediate conditions were dry but the day's forecast still called for rain later. Bring/Skip conflicts are now resolved generically in the decision-data layer, not with umbrella-specific string handling.
Preserved urgent drive-now road alerts
A "Drive now"-worthy imminent rain warning could be silently hidden whenever the aggregate road-risk band read "low." The urgent alert now stays visible in that case, while ordinary low-risk days still stay clean.
Hardened Android E2E device preflight
The device smoke-test harness now wakes and unlocks the device, dismisses the keyguard, collapses the notification shade, extends the screen timeout, and enables (and verifies) stay-awake-while-powered before running — closing a false-PASS failure mode where a locked or asleep screen could silently pass validation. All device settings are restored afterward regardless of outcome.
Under the hood
- Deep-audit remediation: widget-migration self-healing, temperature-unit display consistency, four new crash guards on malformed API shapes, a request-race guard against stale fetches overwriting newer state, and per-tab crash isolation (one tab's crash no longer takes down all five)
- 7 of 11 duplicated-logic patterns closed via shared helpers (wet-condition checks, slot-picking, local-hour routing,
capitalize(), safe AsyncStorage, boolean-driven road/change/rain-risk state replacing fragile string-matching, memoized plan/feed builders) - 48 stale tracked
dist/build artifacts removed — a stale precompiled JS bundle had been silently shipping in release builds regardless of source changes - Full repo lint: 0 errors, 0 warnings
- 724 unit/integration tests, 64 suites, 17/17 smoke, 8/8 device E2E — all deterministic (no time-of-day-dependent flakes)
What stays the same
- Local-first privacy: no background telemetry, no user accounts, no cloud sync
- OpenWeather data — no new API calls, no rate limit changes
- Widget deep links unchanged
Upgrading
Direct APK install — replace the v0.3.2 APK with the v0.3.3 APK. No data migration needed.
SHA256: 50ABE59E52B6DC7E8649C0CA63EB065425F8EDC607187E3844D90CE5F1EED833