- Elixir 55.8%
- JavaScript 16.7%
- HTML 12%
- TypeScript 10.1%
- CSS 3.2%
- Other 2.2%
Closes #6 ## Summary - Defines the mandatory single aggregate-per-command ownership contract in architecture and event-model schema docs. - Enforces command ownership metadata, router self-registration, middleware ordering, and external-input idempotency keys in the strict completeness validator. - Aligns bootstrap state-change slices with aggregate module/name separation and stable idempotency keys. ## Verification - `npm run test:event-model-contract` - `npm run check:event-model` - `mix format --check-formatted` - `MIX_ENV=test mix compile --warnings-as-errors --force` - `MIX_ENV=prod mix compile --warnings-as-errors --force` - `mix test --warnings-as-errors` ## Skipped unavailable gates - `mix dialyzer --halt-exit-status` (task not installed) - `mix credo --strict` (task not installed) - `mix sobelow` (task not installed) Reviewed-on: jwilger/anything_app#65 |
||
|---|---|---|
| .kilo | ||
| assets | ||
| config | ||
| docker/postgres/init | ||
| docs | ||
| event_model | ||
| lib | ||
| priv | ||
| scripts | ||
| test | ||
| .formatter.exs | ||
| .gitignore | ||
| AGENTS.md | ||
| compose.yaml | ||
| flake.lock | ||
| flake.nix | ||
| kilo.json | ||
| mix.exs | ||
| mix.lock | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
Anything
Anything is a Phoenix 1.8 application for building a defect-driven, self-evolving application workflow. The user describes what is not working through a chat/defect console; the system records that defect, updates an event model first, validates the model for strict information completeness, generates code from validated model changes, runs test/compile gates, safely loads accepted changes, and asks for the next defect.
The application is intended to be event-sourced and observable: Commanded owns write-side decisions and durable workflow history, Postgres stores events/read models/vector memory, Phoenix LiveView provides the primary UI, and deterministic validators keep LLM-assisted model/code changes behind explicit checks.
Current baseline
This branch establishes the runnable Phoenix baseline:
- Phoenix 1.8 with LiveView and Postgres.
- Tailwind 4 and daisyUI asset defaults.
- Centralized configuration in
config/config.exsandconfig/runtime.exs. - Environment-driven runtime settings suitable for 12-factor deployment.
- Initial threat-model documentation for the Phoenix/Postgres baseline.
Local setup
Start the local Postgres service, then install and prepare dependencies:
mix setup
Start Phoenix with:
mix phx.server
or inside IEx:
iex -S mix phx.server
Visit localhost:4000 from your browser.
Configuration
Development and test database settings default to the repository Compose Postgres service and can be overridden with standard Postgres environment variables:
PGUSER(default:anything)PGPASSWORD(default:postgres)PGHOST(default:127.0.0.1)PGPORT(default:55432)PGDATABASEfor development (default:anything_dev)
Production requires DATABASE_URL and SECRET_KEY_BASE. Optional runtime settings include PORT, PHX_HOST, POOL_SIZE, ECTO_IPV6, DNS_CLUSTER_QUERY, and PHX_SERVER.
Verification
Useful baseline checks:
mix format --check-formatted
MIX_ENV=test mix compile --warnings-as-errors --force
mix test --warnings-as-errors