Skip to content
This repository was archived by the owner on Sep 10, 2026. It is now read-only.
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
19 changes: 0 additions & 19 deletions .changeset/optional-auth-domain.md

This file was deleted.

33 changes: 0 additions & 33 deletions .changeset/placeholder-app-icon.md

This file was deleted.

2 changes: 1 addition & 1 deletion clients/dart/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This package is generated from the Eigen engine's OpenAPI specification and its
version tracks [`@eigeninteractive/server`](https://www.npmjs.com/package/@eigeninteractive/server)
exactly: 0.3.0 here is 0.3.0 there. It has no changes of its own.
exactly: 0.3.1 here is 0.3.1 there. It has no changes of its own.

See the engine's changelog:
<https://github.com/eigeninteractive/eigen-server/blob/main/packages/server/CHANGELOG.md>
Expand Down
2 changes: 1 addition & 1 deletion clients/dart/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The server-authoritative game engine API. Client routes (`/api/engine/_*`) requi

This Dart package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 0.3.0
- API version: 0.3.1
- Generator version: 7.17.0
- Build package: org.openapitools.codegen.languages.DartDioClientCodegen

Expand Down
2 changes: 1 addition & 1 deletion clients/dart/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ description: >-
# `version:` is stamped by the generation script from @eigeninteractive/server's
# package.json. The wire contract is the server's, so the client carries the
# server's version. Do not edit it by hand.
version: 0.3.0
version: 0.3.1
homepage: https://eigeninteractive.com
repository: https://github.com/eigeninteractive/eigen-server
issue_tracker: https://github.com/eigeninteractive/eigen-server/issues
Expand Down
20 changes: 20 additions & 0 deletions packages/create-eigen-game/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# create-eigen-game

## 0.10.1

### Patch Changes

- [#56](https://github.com/eigeninteractive/eigen-server/pull/56) [`ede5342`](https://github.com/eigeninteractive/eigen-server/commit/ede534238b8c3dac07c4a55f5c7a846ffc2a5aab) Thanks [@seenu-k](https://github.com/seenu-k)! - Scaffold an optional `AUTH_DOMAIN`.

Web sign-in runs through Firebase's popup, which loads
`https://<authDomain>/__/auth/handler`, so Google's account chooser reads "Sign
in to continue to my-project.firebaseapp.com". `app-config.json` now carries an
`AUTH_DOMAIN` key and `main.dart` passes it to `EngineConfig.authDomain`. The
pinned `eigen_flutter` floor moves to `^0.4.1` for that parameter: additive, so
a patch pre-1.0, but the floor has to rise or a scaffold could resolve 0.4.0 and
fail to compile.

Empty is the scaffolded value and the right answer for almost every game: it
leaves sign-in on the Firebase project's own domain, which works everywhere and
needs no Firebase Hosting. Setting it is cosmetic and web-only, and it is not
`APP_HOST`: the value must be a Firebase Hosting domain, a sibling of the
Worker's host rather than the host itself.

## 0.10.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/create-eigen-game/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "create-eigen-game",
"version": "0.10.0",
"version": "0.10.1",
"license": "MIT",
"description": "Scaffold an EigenInteractive game Worker and Flutter app without cloning the engine repositories.",
"type": "module",
Expand Down
7 changes: 7 additions & 0 deletions packages/kernel/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @eigeninteractive/kernel

## 0.3.1

### Patch Changes

- Updated dependencies []:
- @eigeninteractive/rules@0.3.1

## 0.3.0

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/kernel/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@eigeninteractive/kernel",
"version": "0.3.0",
"version": "0.3.1",
"license": "MIT",
"description": "The pure decision core of the EigenInteractive engine: given a game, state, roster and intent it returns a commit plan or a rejection. No I/O, no platform APIs.",
"main": "./dist/index.js",
Expand Down
2 changes: 2 additions & 0 deletions packages/rules/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# @eigeninteractive/rules

## 0.3.1

## 0.3.0

## 0.2.5
Expand Down
2 changes: 1 addition & 1 deletion packages/rules/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@eigeninteractive/rules",
"version": "0.3.0",
"version": "0.3.1",
"license": "MIT",
"description": "The game-rules contract for the EigenInteractive engine: GameRules, GameModule, the hooks, and the Envelope/Observation types. Pure types, zero engine dependencies.",
"main": "./dist/index.js",
Expand Down
37 changes: 37 additions & 0 deletions packages/server/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,42 @@
# @eigeninteractive/server

## 0.3.1

### Patch Changes

- [#55](https://github.com/eigeninteractive/eigen-server/pull/55) [`13ac3e3`](https://github.com/eigeninteractive/eigen-server/commit/13ac3e38ab18a8da39e09392bc3a70226d0b3bf2) Thanks [@seenu-k](https://github.com/seenu-k)! - Serve a placeholder app icon instead of linking one that is not there.

Every page the engine renders linked `/favicon.png` and `/icons/Icon-192.png`
unconditionally. Those are static assets from the game's own `public/`, which a
fresh scaffold ships holding a single `.gitkeep`, so until a Flutter web build
landed there the browser tab was blank and all four manifest icons 404ed. An
Android-only game, which never runs `build:web`, stayed that way permanently,
even though the download page's hero already had a fallback for exactly this
case.

The shell now links the EigenInteractive mark, served by the worker at
`/_eigen/icon/v1/mark.svg` and drawn in the game's `site.primaryColor`, and the
manifest advertises that single scalable icon rather than four missing PNGs.
Apple's touch icon is omitted rather than pointed at a missing file, since it
has no SVG support.

It is a placeholder, not a default: as soon as `favicon.png` exists in
`public/`, the shell links the game's own icons everywhere and the placeholder
goes unused.

The probe behind that decision was split in two. `hasWebBuild` asks for
`index.html` and still gates the "Play on the web" button; the new
`hasAppIcons` asks for `favicon.png` and gates every icon. They used to be one
question on the grounds that `flutter build web` emits both together, which is
true for a game that ships on the web and wrong for the case worth supporting:
an Android-only game that copies its launcher icons into `public/` now gets
them. `hasAppIcons` checks the response's content type as well as its status,
because the scaffold's `single-page-application` fallback answers `200 OK` with
`index.html` for any asset that is missing.
- Updated dependencies []:
- @eigeninteractive/kernel@0.3.1
- @eigeninteractive/rules@0.3.1

## 0.3.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/server/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"openapi": "3.1.0",
"info": {
"title": "EigenInteractive Engine API",
"version": "0.3.0",
"version": "0.3.1",
"description": "The server-authoritative game engine API. Client routes (`/api/engine/*`) require a Firebase ID token; the external-bot webhook (`/api/bot/action`) is HMAC-authenticated."
},
"tags": [
Expand Down
2 changes: 1 addition & 1 deletion packages/server/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@eigeninteractive/server",
"version": "0.3.0",
"version": "0.3.1",
"license": "MIT",
"description": "The deployable half of the EigenInteractive engine: the createEngine Worker factory, the BaseGameDO Durable Object base class, the D1 schema and appliers, auth, bots and push.",
"main": "./dist/index.js",
Expand Down
8 changes: 8 additions & 0 deletions packages/testkit/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# @eigeninteractive/testkit

## 0.3.1

### Patch Changes

- Updated dependencies []:
- @eigeninteractive/kernel@0.3.1
- @eigeninteractive/rules@0.3.1

## 0.3.0

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/testkit/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@eigeninteractive/testkit",
"version": "0.3.0",
"version": "0.3.1",
"license": "MIT",
"description": "Test helpers for games built on the EigenInteractive engine: drive rules through the real kernel and run shared twin fixtures, with no Worker, database or network.",
"main": "./dist/index.js",
Expand Down