Skip to content
Merged
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
18 changes: 17 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,21 @@ full engineering record.

## [Unreleased]

## [0.3.30] — 2026-07-31

- Let returning Farcaster Mini App players enter Genesis 001 directly when
Quick Auth, admission, current Terms acceptance, and their canonical keep all
agree.
- Kept players awaiting admission on the private Request Access step, and
required explicit acceptance whenever the versioned Alpha Terms change.
- Removed the title and ordinary menu from the successful Mini App launch path
without treating a query, host profile, route, or browser state as authority.
- Made missing or malformed Quick Auth credentials settle into a safe retry
instead of an endless loading state, and let native Back dismiss the nested
Terms dialog without leaving Warpkeep.
- Left ordinary browser entry, admission decisions, castle ownership, Workers,
resources, balances, terrain, and persistent world data unchanged.

## [0.3.29] — 2026-07-31

- Made Realm gestures recover cleanly when a menu, record, or inactive
Expand Down Expand Up @@ -325,7 +340,8 @@ full engineering record.
Lowlands, a first keep, Farcaster sign-in, and an admission-gated shared-world
foundation.

[Unreleased]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.29...HEAD
[Unreleased]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.30...HEAD
[0.3.30]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.29...v0.3.30
[0.3.29]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.28...v0.3.29
[0.3.28]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.27...v0.3.28
[0.3.27]: https://github.com/ael-dev3/Warpkeep/compare/v0.3.26...v0.3.27
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

Genesis 001 is a persistent, invite-only 10,000-cell Lowlands realm with 100 permanent castle sites gathered near its founding district. Each admitted founder enters through a verified Farcaster identity, receives one durable keep, and returns to a world that remembers its coastline, twelve rivers, wintering north, sunscoured south, shaped forests, resource sites, Workers, wagons, and public keeper portraits. Four permanent Workers can gather Food / Wood / Stone / Gold, settle production automatically, and return home on command.

Alpha 0.3.29: The Realm Holds is live in ordinary browsers and as a portrait-first Farcaster Mini App. Verified players who are still outside the gate can request access for manual review. The intended core strategy loop is not playable yet: Warpkeep is a one-person, open-source experiment—not a finished MMO or financial product. Participation earns no token reward, airdrop, financial return, guaranteed reward, or future value.
Alpha 0.3.30: The Gate Remembers is live in ordinary browsers and as a portrait-first Farcaster Mini App. Returning admitted players with current Alpha Terms enter the Realm directly; verified players still outside the gate can request access for manual review. The intended core strategy loop is not playable yet: Warpkeep is a one-person, open-source experiment—not a finished MMO or financial product. Participation earns no token reward, airdrop, financial return, guaranteed reward, or future value.

![Development preview of Genesis 001 showing the Lowlands and an open Wheat Farm inspection panel.](docs/reference/screenshots/2026-07-22-realm-wheat-farm-preview/warpkeep-realm-wheat-farm-preview-f3b1f7e598c543d6.png)

Expand All @@ -29,7 +29,7 @@ Open the local URL Vite prints; shared Alpha access stays off by default. Contri

| State | Today |
| --- | --- |
| ✅ Live | Alpha 0.3.29: The Realm Holds is live and invite-only in browsers and the Farcaster Mini App. |
| ✅ Live | Alpha 0.3.30: The Gate Remembers is live and invite-only in browsers and the Farcaster Mini App. |
| ✅ World | Genesis 001 persists 10,000 cells, a coastline, twelve one-cell rivers, colder northern and drier southern frontiers, and 100 permanent castle sites near the founding district. Founders return to one durable keep, explore the Lowlands up to its fog, and inspect nearby founders through their public username / portrait / castle. |
| ✅ Authority | FID is the durable identity; handles and portraits are bounded presentation metadata. Farcaster sign-in uses a browser-bound, least-privilege bridge. The browser presents; the server decides admission, ownership, resources, timers, and saved state. A private access request asks for manual review and grants nothing by itself. |
| ✅ Resources | Each keep privately holds Food / Wood / Stone / Gold. Food, Wood, and Stone come from authoritative terrain yield and can also be gathered at Wheat Farms, Logging Camps, and Stone Quarries; Gold comes from Gold Mines. Completed yield settles without a Claim step, and occupied sites keep their gathering story in one record. The browser never invents balances. |
Expand All @@ -54,7 +54,7 @@ Open the local URL Vite prints; shared Alpha access stays off by default. Contri
- **Architecture:** The [technical architecture](docs/technical-architecture.md) explains what the browser shows and what the server decides.
- **Roadmap:** The [roadmap](docs/design/roadmap.md) and [game direction](docs/design/warpkeep-direction.md) separate today's game from later plans.
- **Authentication:** The [Farcaster integration](docs/farcaster-integration.md) guide covers sign-in, privacy, and public configuration.
- **Release:** The [Alpha 0.3.29 release notes](CHANGELOG.md#0329--2026-07-31) describe The Realm Holds.
- **Release:** The [Alpha 0.3.30 release notes](CHANGELOG.md#0330--2026-07-31) describe The Gate Remembers.
- **Licensing:** [LICENSING.md](LICENSING.md) explains release rules; [asset provenance](ASSETS-LICENSE.md) records where media came from and what permissions apply.
- **Contributing:** [CONTRIBUTING.md](CONTRIBUTING.md) covers checks and provenance; the [Realm Council issue forms](https://github.com/ael-dev3/Warpkeep/issues/new/choose) accept privacy-safe bugs and ideas.
- **Security:** Report sensitive issues privately through [SECURITY.md](SECURITY.md), never through a public issue.
Expand Down
19 changes: 14 additions & 5 deletions docs/farcaster-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ordinary browsers use Sign In with Farcaster (SIWF), while a verified Farcaster
Mini App host may use Quick Auth. Neither path is a wallet connection,
client-owned identity, admission grant, or Terms acceptance.

Alpha 0.3.29 keeps backend protocol 3 and authentication contract v2; admission
Alpha 0.3.30 keeps backend protocol 3 and authentication contract v2; admission
remains gated. Production configuration and founder identities belong in the
private operator record, not this guide.

Expand Down Expand Up @@ -33,8 +33,11 @@ verified Mini App host
-> bridge verifies signature, issuer, expiry, and domain warpkeep.com
-> verified numeric sub becomes the candidate FID
-> the same admission and auth-epoch resolver decides access
-> pending or disabled: Request Access remains visible, with no access token or Realm connection
-> authorized: one short-lived memory-only SpacetimeDB access token
-> pending or disabled: no access token and no private Realm authority
-> SpacetimeDB confirms the exact current versioned Terms record for that FID
-> current Terms plus the matching canonical keep: enter the Realm directly
-> missing current Terms: require one explicit acceptance before Realm activation
```

The bridge, not the browser, establishes `sub: farcaster:<fid>`. Its exchange
Expand Down Expand Up @@ -66,11 +69,17 @@ and never falls back to a local or anonymous database identity.

## Browser flow and privacy

Selecting **ENTER REALM** first checks whether the current authenticated FID has
already recorded the exact required Terms version. That same authorized session
may continue without asking again. A missing or stale record opens the concise
In ordinary browsers, selecting **ENTER REALM** first checks whether the current
authenticated FID has already recorded the exact required Terms version. In a
verified Mini App, the same check runs automatically after Quick Auth: an admitted
player with a matching canonical keep and current acceptance enters the Realm
without crossing the title or ordinary menu. A missing or stale record opens the concise
**ALPHA PARTICIPATION TERMS** gate; only explicit agreement begins or completes
entry. A checkbox alone has no authority, and Quick Auth never accepts Terms.
Acceptance is an immutable private FID/version record rather than a mutable
browser checkbox. Changing the required version makes every older record
non-current and prompts one new explicit acceptance while preserving the audit
history.

Outside a verified Mini App host, title load, anonymous menu load,
focus/visibility/pageshow events, ordinary route rendering, and direct `#realm`
Expand Down
2 changes: 1 addition & 1 deletion docs/releases/versioning.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Versioning and releases

Warpkeep uses semantic versions for the product and Git commit SHAs for builds.
Alpha `0.3.29` is the live **The Realm Holds** release. A version is
Alpha `0.3.30` is the live **The Gate Remembers** release. A version is
described as live only after its protected review, matching client deployment,
and production smoke test all succeed.

Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "warpkeep",
"private": true,
"version": "0.3.29",
"version": "0.3.30",
"description": "A Farcaster-connected persistent strategy world in active Alpha development.",
"license": "Apache-2.0",
"homepage": "https://warpkeep.com",
Expand Down
2 changes: 1 addition & 1 deletion services/auth-bridge/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Warpkeep's SpacetimeDB connection. It is isolated from the static browser app:
browser code never receives a signing key, admin secret, Optimism RPC URL,
resolver JWT, private Hermes JWT, or Maincloud credential.

Alpha 0.3.29 uses authentication contract v2 and backend protocol 3. The
Alpha 0.3.30 uses authentication contract v2 and backend protocol 3. The
checked-in configuration fails closed: `wrangler.toml` keeps
`PUBLIC_AUTH_ENABLED = "false"`, while any production enablement is a separate,
privately recorded operation. World generation and resource features do not
Expand Down
Loading