diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index fe6ccb4..49a1994 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -16,7 +16,7 @@ jobs: strategy: fail-fast: false matrix: - language: [javascript, python] + language: [javascript] steps: - name: Checkout uses: actions/checkout@v4 diff --git a/about.html b/about.html index 77a2fe5..def4b9d 100644 --- a/about.html +++ b/about.html @@ -54,7 +54,7 @@

Our standard

Public sources

-

Product work is published under the Zero-State-LLC organization. Portfolio pages link to each repository as the current public source of truth. App Store and production product URLs are not claimed until a release is ready.

+

Product work is developed under the Zero State brand. Portfolio pages present the current product posture; App Store and production product URLs are not claimed until a release is ready.

Contact

Reach Zero State at zer0state@zer0state.com.

@@ -79,4 +79,4 @@

Contact

- \ No newline at end of file + diff --git a/assets/products/slosh-hero.gif b/assets/products/slosh-hero.gif new file mode 100644 index 0000000..f650547 Binary files /dev/null and b/assets/products/slosh-hero.gif differ diff --git a/index.html b/index.html index e232172..38d87fe 100644 --- a/index.html +++ b/index.html @@ -152,6 +152,14 @@

Systems in motion.

+ + + + Slosh + Interactive water for Apple Watch + + + diff --git a/marketing.html b/marketing.html index b2cc814..33179d4 100644 --- a/marketing.html +++ b/marketing.html @@ -115,6 +115,16 @@

Marigold Market

Pre-release 0.1.x · iOS

+ +
+ Slosh interactive water experience on Apple Watch +
+
+ Interactive water for Apple Watch +

Slosh

+

Active development · watchOS + iOS

+
+
diff --git a/products/hollersports.html b/products/hollersports.html index ffa2df7..1e219b9 100644 --- a/products/hollersports.html +++ b/products/hollersports.html @@ -46,8 +46,11 @@

What it is

In short

-

Sports analysis that isolates every slate, fingerprints its inputs, and refuses silent bleed between runs — so the same slate can be reproduced and audited.

- Source on GitHub +

State isolation. Every slate starts from init_new_slate_state with no artifacts from previous runs.

+

Provenance. Inputs and intermediate artifacts are fingerprinted—source games and datasets, category, game context, and calibration—so analysis can be audited end to end.

+

Input validation. Before processing, state is asserted against the current games, datasets, and provider so stale state cannot be reused by accident.

+

Controlled calibration. Cross-slate calibration is opt-in and explicit; the default is discard, not silent merge.

+

A companion feedback loop can ingest expected outcomes and game results, compute residuals, and update model priors with append-only ledgers. Engine architecture and validation live in the product repository.

diff --git a/products/marigold-market.html b/products/marigold-market.html index 861307e..057e04d 100644 --- a/products/marigold-market.html +++ b/products/marigold-market.html @@ -47,7 +47,7 @@

What it is

In short

Cozy shelf-sorting on iPhone: match triples, restock rooms, clear levels without timers or lives. Feel-good juice is the product, not an afterthought.

- Source on GitHub +

Item sets in flight include Pantry, Café, Craft room, and Vanity. Stack is SwiftUI, SpriteKit, pure-Swift GameCore, and XcodeGen. Home-screen label: Marigold.

diff --git a/products/patchhive.html b/products/patchhive.html index 7a830b5..1c180b6 100644 --- a/products/patchhive.html +++ b/products/patchhive.html @@ -47,7 +47,7 @@

What it is

In short

Turn a verified modular rig into clear, publishable patch books — complete on one page, without pretending to be a synth or hardware controller.

- Source on GitHub +

Canonical MVP and PatchBook Design Engine land on main; design engine flags default off. Visual System Intelligence P0 covers photo evidence, inventory gate, and multi-photo fusion with mock vision. Production deploy has not been performed; live payments stay disabled.

diff --git a/products/psyfi.html b/products/psyfi.html index b5b4dad..9cb1ce3 100644 --- a/products/psyfi.html +++ b/products/psyfi.html @@ -47,7 +47,7 @@

What it is

In short

A research instrument for consciousness-field simulation and phenomenology visualization. Expressive field, precise controls — not medical advice.

- Source on GitHub +

API freezes, readiness boards, and contracts remain part of the product’s internal development surface. This page is a controlled parent-brand summary and does not expand product claims beyond the current product posture.

diff --git a/products/slosh.html b/products/slosh.html new file mode 100644 index 0000000..fa59a83 --- /dev/null +++ b/products/slosh.html @@ -0,0 +1,67 @@ + + + + + + +Slosh — Zero State + + + + + + + +
+
+ ZERØ STATE + +
+
+ +
+
+

Interactive water for Apple Watch

+

Slosh

+

Wear water on your wrist. Discover it on iPhone. Fifteen living water modes respond to motion, touch, and place.

+

Active development · watchOS + iOS · physical-device validation remains

+
+ Slosh calm ocean water experience +
+
+ +
+
+

What it is

+
+

Slosh is a watchOS water instrument: look straight down into an ocean, tide pool, rain shower, or other authored water experience and let the wrist become the control surface.

+

Tilt the watch and the swell rolls with you. Shake it and the surface stirs. Tap it and a ripple spreads. SpriteKit fragment shaders provide the per-pixel water while SwiftUI carries the app shell.

+
+
+
+ +
+
+

Water, with provenance

+
+

The iPhone companion is the discovery and configuration surface. Reviewed places can carry live hydro conditions from NOAA and USGS while keeping the worn experience quiet, immediate, and free of telemetry.

+

All fifteen authored modes render in the simulator. Physical-watch tilt behavior, frame rate, battery impact, and App Store readiness remain open validation gates.

+
+
+
+

Return to the evidence

All projects ↖
+
+ + + + + diff --git a/products/surveillance-survivor.html b/products/surveillance-survivor.html index badc3d5..a6a248c 100644 --- a/products/surveillance-survivor.html +++ b/products/surveillance-survivor.html @@ -46,8 +46,8 @@

What it is

In short

-

A satirical survivor roguelite about staying untrackable. Pre-alpha: playable in simulator, not a store release yet.

- Source on GitHub +

Tone is paranoid slapstick, not horror realism. A deterministic fixed-step Swift core owns game truth; SpriteKit projects state; SwiftUI supplies shell and HUD. The vertical slice includes Suspicion, destructible LPR poles, upgrades, district authorities, campaign unlocks, and Blind Spot extraction.

+

Physical-device acceptance and App Store owner fields remain open—do not describe the project as release-ready.

diff --git a/products/waykin.html b/products/waykin.html index dbe5257..7cfa40d 100644 --- a/products/waykin.html +++ b/products/waykin.html @@ -48,8 +48,8 @@

What it is

In short

-

An iOS companion that walks with you in audio and adaptive world response — bond and motion first, not another map-and-metric fitness app.

- Source on GitHub +

Home → Begin Walk (real) or Demo Walk → Active Session → Session Summary → Memory. Demo Mode runs the same deterministic loop without physical movement or location permission.

+

Walking, Lira runtime, Bond progression, semantic audio cues, and local session memories are implemented and package-tested. Device audio acceptance remains direct evidence, not assumed.

diff --git a/scripts/validate-site.js b/scripts/validate-site.js index 6c5164a..74f0909 100644 --- a/scripts/validate-site.js +++ b/scripts/validate-site.js @@ -9,7 +9,7 @@ const requiredPages = [ 'privacy.html', 'terms.html', 'marketing.html', 'products/waykin.html', 'products/patchhive.html', 'products/psyfi.html', 'products/surveillance-survivor.html', 'products/hexwire.html', - 'products/hollersports.html', 'products/marigold-market.html', + 'products/hollersports.html', 'products/marigold-market.html', 'products/slosh.html', 'skills/orchestra.html', 'skills/hyperlex.html', 'skills/kubrick.html', 'skills/neon-genie.html' ]; const requiredHeroes = [ @@ -20,6 +20,7 @@ const requiredHeroes = [ 'assets/products/hexwire-hero.png', 'assets/products/hollersports-hero.jpg', 'assets/products/marigold-hero.jpg', + 'assets/products/slosh-hero.gif', 'assets/skills/orchestra-hero.jpg', 'assets/skills/hyperlex-hero.jpg', 'assets/skills/kubrick-hero.jpg', @@ -60,6 +61,7 @@ const psyfi = fs.readFileSync(path.join(root, 'products/psyfi.html'), 'utf8'); const hollersports = fs.readFileSync(path.join(root, 'products/hollersports.html'), 'utf8'); const marigold = fs.readFileSync(path.join(root, 'products/marigold-market.html'), 'utf8'); const hexwire = fs.readFileSync(path.join(root, 'products/hexwire.html'), 'utf8'); +const slosh = fs.readFileSync(path.join(root, 'products/slosh.html'), 'utf8'); const cssDark = fs.readFileSync(path.join(root, 'styles-dark.css'), 'utf8'); // Official dark home — primary identity logo + social preview @@ -73,7 +75,7 @@ if (!exists('styles-dark.css')) fail('styles-dark.css', 'official dark home styl if (!/hero-grid/.test(index)) fail('index.html', 'landing field grid is missing'); // Org portfolio completeness -for (const name of ['Waykin', 'PatchHive', 'PsyFi', 'Surveillance Survivor', 'HexWire', 'Hollersports', 'Marigold Market']) { +for (const name of ['Waykin', 'PatchHive', 'PsyFi', 'Surveillance Survivor', 'HexWire', 'Hollersports', 'Marigold Market', 'Slosh']) { if (!index.includes(name)) fail('index.html', `${name} is missing from selected work`); if (!work.includes(name)) fail('work.html', `${name} is missing from portfolio`); } @@ -84,6 +86,7 @@ if (!/assets\/products\/surveillance-survivor-hero\.png/.test(work)) fail('work. if (!/assets\/products\/hexwire-hero\.png/.test(work)) fail('work.html', 'HexWire hero image is missing'); if (!/assets\/products\/hollersports-hero\.jpg/.test(work)) fail('work.html', 'Hollersports hero image is missing'); if (!/assets\/products\/marigold-hero\.jpg/.test(work)) fail('work.html', 'Marigold Market hero image is missing'); +if (!/assets\/products\/slosh-hero\.gif/.test(work)) fail('work.html', 'Slosh hero image is missing'); if (!/Active pre-alpha · simulator-ready · not release-ready/.test(work) && !/Active pre-alpha · simulator-ready vertical slice · not release-ready/.test(work)) { fail('work.html', 'Surveillance Survivor readiness posture is missing or overstated'); @@ -92,17 +95,22 @@ if (!/Stabilized vertical slice · CI-verified · device and App Store release g fail('work.html', 'HexWire readiness posture is missing or overstated'); } if (!/iPhone-first satirical survivor roguelite/.test(surveillance)) fail('products/surveillance-survivor.html', 'canonical README description is missing'); -if (!/Zero-State-LLC\/Surveillance-Survivor/.test(surveillance)) fail('products/surveillance-survivor.html', 'canonical repository link is missing'); -if (!/Zero-State-LLC\/Waykin/.test(waykin)) fail('products/waykin.html', 'canonical repository link is missing'); -if (!/Zero-State-LLC\/Patch-Hive/.test(patchhive)) fail('products/patchhive.html', 'canonical repository link is missing'); -if (!/Zero-State-LLC\/Psy-Fi/.test(psyfi)) fail('products/psyfi.html', 'canonical repository link is missing'); -if (!/Zero-State-LLC\/Hollersports/.test(hollersports)) fail('products/hollersports.html', 'canonical repository link is missing'); -if (!/Zero-State-LLC\/Marigold-Market/.test(marigold)) fail('products/marigold-market.html', 'canonical repository link is missing'); if (!/tactical cyberpunk hex-grid RPG/.test(hexwire)) fail('products/hexwire.html', 'canonical HexWire README description is missing'); if (!/Signal → Power → Trace → Escalation → Lay Low → Tempo Tradeoff/.test(hexwire)) fail('products/hexwire.html', 'canonical HexWire pressure loop is missing'); -if (!/Zero-State-LLC\/Hexwire/.test(hexwire)) fail('products/hexwire.html', 'canonical repository link is missing'); if (!/not medical advice/.test(psyfi)) fail('products/psyfi.html', 'PsyFi research-only disclaimer is missing'); if (!/Eurorack rig-intelligence/.test(patchhive)) fail('products/patchhive.html', 'PatchHive canonical product description is missing'); +if (!/fifteen living water modes/i.test(slosh)) fail('products/slosh.html', 'Slosh water-mode description is missing'); +if (!/watchOS \+ iOS/.test(slosh)) fail('products/slosh.html', 'Slosh platform posture is missing'); +for (const [name, html] of [ + ['products/waykin.html', waykin], ['products/patchhive.html', patchhive], + ['products/psyfi.html', psyfi], ['products/surveillance-survivor.html', surveillance], + ['products/hexwire.html', hexwire], ['products/hollersports.html', hollersports], + ['products/marigold-market.html', marigold], ['products/slosh.html', slosh] +]) { + if (/]*href=["'][^"']*(?:github\.com|gitlab\.com|bitbucket\.org)[^"']*["']/i.test(html)) { + fail(name, 'product page exposes a codebase link'); + } +} // Hermes / OpenClaw skills section for (const name of ['Abraxas Orchestra', 'Hyperlex', 'Kubrick', 'Neon Genie']) { @@ -142,7 +150,7 @@ if (!/zer0state@zer0state\.com/.test(fs.readFileSync(path.join(root, 'terms.html if (!/zer0state@zer0state\.com/.test(contact)) fail('contact.html', 'operational contact is missing'); if (!/support/i.test(contact)) fail('contact.html', 'support framing is missing'); if (!/Zero State LLC/.test(marketing)) fail('marketing.html', 'legal entity name is missing'); -if (!/Marigold Market/.test(marketing)) fail('marketing.html', 'product marketing cards are incomplete'); +if (!/Marigold Market/.test(marketing) || !/Slosh/.test(marketing)) fail('marketing.html', 'product marketing cards are incomplete'); if (!/privacy\.html/.test(marketing)) fail('marketing.html', 'privacy link is missing'); if (!/contact\.html/.test(marketing)) fail('marketing.html', 'support link is missing'); if (!/Zero State LLC/.test(about)) fail('about.html', 'legal entity name is missing'); diff --git a/site-manifest.json b/site-manifest.json index 594d174..af32e64 100644 --- a/site-manifest.json +++ b/site-manifest.json @@ -18,6 +18,7 @@ "products/hexwire.html", "products/hollersports.html", "products/marigold-market.html", + "products/slosh.html", "skills/orchestra.html", "skills/hyperlex.html", "skills/kubrick.html", @@ -31,7 +32,8 @@ "Zero-State-LLC/Surveillance-Survivor", "Zero-State-LLC/Hexwire", "Zero-State-LLC/Hollersports", - "Zero-State-LLC/Marigold-Market" + "Zero-State-LLC/Marigold-Market", + "Zero-State-LLC/slosh" ], "public_sources": { "org_repositories": "https://github.com/orgs/Zero-State-LLC/repositories", diff --git a/work.html b/work.html index 2e83ec1..55f550c 100644 --- a/work.html +++ b/work.html @@ -31,7 +31,7 @@

Zero State LLC · Portfolio

Products and skills are the evidence.

-

Software systems and agent skills under Zero State — each with a short description of what it does for people, not how the repo is laid out.

+

The public surface of the method: software systems and installable agent skills. Each product entry opens a parent-brand page with the current product posture. Heroes come from each project’s own source of truth.

@@ -118,6 +118,16 @@

Marigold Market

Pre-release 0.1.x · iOS

+ +
+ Slosh interactive water experience on Apple Watch +
+
+ Interactive water for Apple Watch +

Slosh

+

Active development · watchOS + iOS

+
+