Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .grok/skills/waykin-ar-debug/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-audio/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ metadata:

# waykin-audio

Waykin is **audio-first**. Semantic cues are Core; filenames and AVAudioSession are App.
Waykin is **AR-designed**, with audio as a required supporting channel for presence, accessibility, safety, and pocket use. Semantic cues are Core; filenames and AVAudioSession are App.

## 0. Ownership

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-audio/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-build/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-healthkit/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-pr-review/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-release/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ make check-lira-usdz
Read and confirm present:

- `docs/legal/PRIVACY.md`, `TERMS.md`, `SAFETY.md`, `NOTICES.md`
- `LICENSE` Apache-2.0
- `LICENSE` Proprietary (Zero State)
- Usage descriptions: Location When-In-Use, Camera, Health share
- No background location entitlement unless product explicitly adds it (MVP: foreground walk only)

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-release/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-ui-review/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
2 changes: 1 addition & 1 deletion .grok/skills/waykin-validate/references/REPO_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Read this once at skill start. Prefer absolute repo paths from `git rev-parse --

## Product

- Audio-first **walking** companion app (Lira). Solo MVP.
- AR-designed **walking** companion app (Lira). Solo MVP. Movement is gameplay authority; AR is the primary designed session surface when capable; audio is a required supporting channel.
- Binding scope: `docs/SOLO_MVP_SCOPE.md`, `WAYKIN_SPEC.md`, `ARCHITECTURE.md`, `AGENTS.md`, `docs/governance/DOCUMENT_AUTHORITY.md`.
- One activity: walking. Not run/cycle expansion without scope promotion.

Expand Down
7 changes: 4 additions & 3 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Waykin Architecture

Waykin is currently a solo-developer MVP vertical slice, not a platform. The architecture is bounded around one walking loop and five primary runtime systems.
Waykin is an AR-designed solo-developer MVP vertical slice, not a platform. Movement remains gameplay authority. AR is the primary designed session surface when capability allows, while audio, 2D presence, map, and HUD are supporting presentation channels over the same semantic state.

## Runtime Flow

Expand Down Expand Up @@ -36,10 +36,11 @@ SessionMemory + Bond
- Movement Engine: owns session transitions, elapsed and active time, distance, speed, route points, simulation, and accepted real walking samples.
- World State: derives serializable session context from local movement signals, Bond, time context, familiarity, energy, and pressure.
- Event Generator: emits zero or one deterministic semantic event per tick using a seeded, weighted, cooldown-aware configuration.
- Companion presentation matrix: single source for behavior + relative distance + AR presentation string mapping (`CompanionPresentationMatrix`).
- Companion presentation matrix: single source for behavior + relative distance + shared presentation mapping (`CompanionPresentationMatrix`).
- Companion Runtime: applies experience commands (and event overlays) into Lira’s small behavior vocabulary.
- Audio Experience Layer: maps world events and companion behavior transitions onto the seven semantic cue kinds (priority + cooldown); path soft cues use the same kinds via `PathAudioCoupling` when event/behavior audio is silent.
- App Audio Adapter: maps cue kinds to bundled produced WAVs, enforces a two-channel playback bound, and owns Apple audio-session lifecycle behavior.
- AR Presentation Adapter: maps semantic state through `ARWorldCommand` into the primary designed session surface on capable devices without owning gameplay truth.
- App Audio Adapter: maps cue kinds to bundled produced WAVs, enforces a two-channel playback bound, and owns pocket-safe Apple audio-session lifecycle behavior.
- Path progress: semantic on-path / strained / offPath presentation (not navigation).

Persistence supports Bond and concise memories. It is not a generalized backend or content platform.
Expand Down
2 changes: 1 addition & 1 deletion App/AppAudioCuePlayer.swift
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ extension AVAudioSession: AudioSessionControlling {
}

func configureAmbientMixing() throws {
// `.playback`, not `.ambient`. Waykin is an audio-first walking experience:
// `.playback`, not `.ambient`. Audio is a required pocket-safe supporting channel:
// - `.ambient` is silenced by the hardware ring/silent switch (cues inaudible).
// - `.ambient` stops on backgrounding, so audio died whenever the screen locked
// or the phone went in a pocket — i.e. during the actual walk.
Expand Down
2 changes: 1 addition & 1 deletion App/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
</array>
<key>UIApplicationSupportsIndirectInputEvents</key>
<true/>
<!-- Audio-first walking experience: cues must keep playing with the screen
<!-- Pocket-safe supporting audio: cues must keep playing with the screen
locked and the phone in a pocket. Without this, backgrounding kills audio. -->
<key>UIBackgroundModes</key>
<array>
Expand Down
4 changes: 2 additions & 2 deletions App/Onboarding/OnboardingFlowView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ enum LegalContent {
static let terms = """
Waykin Terms (summary)

Software is Apache 2.0 licensed (see Notices). This is an experiential walking app, not medical advice and not certified turn-by-turn navigation.
Software is proprietary property of Zero State (see Notices / LICENSE). This is an experiential walking app, not medical advice and not certified turn-by-turn navigation.

You are responsible for outdoor safety. You may stop anytime.

Expand All @@ -275,7 +275,7 @@ enum LegalContent {
static let notices = """
Notices

Waykin source is licensed under Apache License 2.0 (LICENSE file).
Waykin is proprietary property of Zero State (LICENSE file).

Apple frameworks (SwiftUI, CoreLocation, MapKit, ARKit, RealityKit, HealthKit, AVFoundation) are subject to Apple’s agreements.

Expand Down
1 change: 1 addition & 0 deletions BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2
40 changes: 40 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Changelog

All notable changes to **Waykin** are documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

Version artifacts: `VERSION`, `BUILD`, `App/Info.plist`, `project.yml` — see [docs/VERSIONING.md](docs/VERSIONING.md).

## [Unreleased]

### Added

- Semantic versioning scaffolding (`VERSION`, `BUILD`, `Tools/version.py`) with parity checks across Info.plist and `project.yml`.
- App-product process docs: `CHANGELOG.md`, `docs/VERSIONING.md`, `docs/TESTING.md`, `docs/SHIP_CHECKLIST.md`, `SECURITY.md`, `CODE_OF_CONDUCT.md`.

### Changed

- LICENSE is **proprietary** (Zero State / Zero State LLC); Apache-2.0 no longer applies to the current tree.
- README clone/badge paths point at the Zero-State-LLC org remote where applicable.
- Phase 0 product identity: AR-designed primary surface with movement as gameplay authority (see `WAYKIN_SPEC.md`, `docs/SOLO_MVP_SCOPE.md`).

## [0.9.0] - 2026-07-25

### Added

- Internal TestFlight cut baseline (marketing `0.9.0`, build `2`).
- Ember Fox companion packaging and AR placement path (#246).
- HealthKit read enrichment hardening (#104).
- Evidence-gated roadmap, capability matrix, and AR redesign reference docs.

### Notes

- Physical outdoor GPS/AR evidence for #41 remains open.
- Demo Mode and package tests remain the CI-authoritative loop.

---

[Unreleased]: https://github.com/Zero-State-LLC/Waykin/compare/v0.9.0...HEAD
[0.9.0]: https://github.com/Zero-State-LLC/Waykin/releases/tag/v0.9.0
27 changes: 27 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Code of Conduct (Zero State)

Internal and collaborator standard for the Waykin repository.

## Expected behavior

- Be respectful and professional in reviews, issues, and chat.
- Criticize code and ideas, not people.
- Prefer actionable alternatives over vague disapproval.
- Represent test and device-evidence results honestly.
- Respect proprietary ownership — do not redistribute product IP outside authorized channels.

## Not acceptable

- Harassment, exclusionary language, or threats.
- Dismissing safety, privacy, or architecture isolation concerns without review.
- Deliberate misrepresentation of tests, outdoor evidence, or ship readiness.
- Intentionally regressing `WaykinCore` isolation for convenience.
- Committing secrets or private field data.

## Reporting

Report violations to the repository owner / Zero State leadership.

## Enforcement

The owner may remove access, revert changes, or take other action proportionate to the violation.
6 changes: 6 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Contributing to Waykin

> **Ownership:** Waykin is the **property of Zero State**. This repository is **proprietary** ([LICENSE](LICENSE)). Contributions are accepted only under assignment / exclusive license to Zero State. Do not submit third-party open-source code under conflicting terms.


## Workflow

1. Start from an approved GitHub issue.
Expand Down Expand Up @@ -45,9 +48,12 @@ Every PR must state:
make build
make test
make validate
python3 Tools/version.py check
git diff --check
```

For release cuts, bump with `python3 Tools/version.py …`, update [`CHANGELOG.md`](CHANGELOG.md), and follow [`docs/VERSIONING.md`](docs/VERSIONING.md) / [`docs/SHIP_CHECKLIST.md`](docs/SHIP_CHECKLIST.md).

`make validate` includes the WaykinCore framework-isolation guard
(`make check-core-isolation`): platform frameworks (ARKit, RealityKit,
SwiftUI, MapKit, SwiftData, AVFoundation, CoreLocation, UIKit, AppKit)
Expand Down
2 changes: 1 addition & 1 deletion Demo/main.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import Foundation
import WaykinCore

print("=== WAYKIN SOLO MVP DEMO ===")
print("Deterministic audio-first walking loop; no GPS or permissions required.\n")
print("Deterministic AR-designed walking loop with semantic presentation output; no GPS, camera, or permissions required.\n")

let movement = MovementEngine()
let companion = Companion(id: UUID(), name: "Lira", archetype: "explorer", bondLevel: 12, lastSessionID: nil, memories: [])
Expand Down
Loading
Loading