Commit graph

19 commits

Author SHA1 Message Date
Adam Brown
60a61541e9
Harden release task against network failures 2026-06-08 21:45:29 -07:00
Adam Brown
d676429fd6
update ignore 2026-06-07 23:27:30 -07:00
Adam Brown
db4343d8f1
Adds a full monitoring subsystem to the server admin panel
- Data foundation: SQLDelight tables for API metrics, error logs, and
login attempts with a v1→v2 schema migration
- Metrics pipeline: per-endpoint request counts, latency, and error
rates collected via a Ktor plugin; daily rollup job with configurable
retention windows
- Error tracking: fingerprinted deduplication, occurrence counts,
first/last seen timestamps, and email alerting on persistent errors
- Security page: login-attempt tracking, brute-force/spray detection
with cooldown alerts, optional IP storage
- Admin dashboard UI: performance charts (Frappe), error panel with
route filter and JSON export, live log viewer (10k ring buffer),
security event feed
- Alert deep-links from the dashboard into filtered error views
- Settings UI: all monitoring options converted to toggle switches;
master switch disables and grays out sub-options via JS; email field
conditionally required with htmx:before-request validation
2026-06-05 19:19:11 -07:00
Wavesonics
331ff2336c Prep iOS Info.plist + profile reference for App Store submission
Declare ITSAppUsesNonExemptEncryption=false so App Store Connect stops
asking on every upload, drop the legacy armv7 UIRequiredDeviceCapabilities
entry, and align CFBundleShortVersionString with the shared codebase
version (3.0.3) in gradle/libs.versions.toml. pbxproj now references the
freshly-issued "Hammer AppStore iOS" provisioning profile.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:16:31 -07:00
Wavesonics
496e05d934 clean up ios user files 2026-05-20 22:45:14 -07:00
Wavesonics
5c4da8909c Add Mac App Store packaging for the desktop module
Pass -PmacOsAppStoreRelease=true -PbuildNumber=N to produce a sandboxed,
signed .pkg ready for TestFlight upload via Transporter / iTMSTransporter.
Apple Silicon only for v1; JBR runtime stays.

- Sandbox-friendly entitlements (network.client + user-selected files
  for the app; JIT/unsigned-mem/disable-library-validation for the JVM).
- JNA libjnidispatch.jnilib is pre-extracted into desktop/resources/macos/
  and located via -Djna.boot.library.path so JNA never tries to extract
  to a temp dir at runtime (which would hang silently in the sandbox).
- com.apple.application-identifier / team-identifier baked into the app
  signature so it matches the embedded provisioning profile.
- UrlLauncher drops the Runtime.exec("open") fallback in favor of the
  Desktop API only.
- Projects-directory picker is hidden in App Store builds; the sandbox
  container's ~/Documents is the only writable location for v1.
- unquarantineMacApp Gradle task strips com.apple.quarantine xattrs
  before pkg packaging to avoid App Store validation errors.
- New helper: desktop/scripts/build-appstore.sh — pre-flight checks,
  one-shot build, codesign + pkgutil signature verification.

Signing assets and API key live in desktop/{embedded,runtime}.provisionprofile
and desktop/secrets/ (both gitignored).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 17:46:07 -07:00
Adam Brown
0d6f87f480
Add Gradle toolchain/wrapper config and ignore .claude directory 2026-04-26 20:13:28 -07:00
Adam Brown
c015999a40
Ignore 2026-02-07 22:28:07 -08:00
Adam Brown
ff4ecd194f Create gradle tasks to produce these distributions 2025-12-26 18:44:56 -08:00
Adam Brown
2bb490aa3f
Frontend rewrite to Hmx (#435) 2025-12-19 01:28:28 -08:00
Adam Brown
18f59ff0eb Converted from Moko Resources to Compose Resources 2025-12-10 01:24:49 -08:00
Adam Brown
91ad3374fe Fix obfuscation crashes 2024-11-02 11:09:17 -07:00
Adam Brown
40de1fd521 Ignore test report dirs 2024-10-19 19:52:25 -07:00
Adam Brown
92d224767d add .kotlin to ignore 2024-05-26 16:07:54 -07:00
Wavesonics
9278504355 Working on Android publishing 2023-08-09 20:54:45 -07:00
Adam Brown
ef5667ace5 Prep for Google Play release 2023-04-24 17:55:05 -07:00
Wavesonics
a4fdc68785 Windows release specs 2023-02-01 22:06:04 -08:00
Adam Brown
ee6784b57a Android up and running 2022-06-02 01:13:43 -07:00
Adam Brown
a30817a109 Initial commit 2022-05-30 23:16:54 -07:00